可重复使用的知识从嵌入式到桌面式

时间:2009-03-17 14:28:15

标签: embedded desktop reusability

我正在考虑在嵌入式电信系统开发(C,MAKE,Symbian,100个编译器等)中大约8年后进入桌面开发(VC ++,MFC,C#等),“略微”改变我的路径

但我担心的是,我在嵌入式系统中的经验可能在进入桌面开发时没有给我太多价值。例如,我长期使用的域特定问题和环境仍然没有给我很多谈判工资,因为它在桌面上没什么价值。

我认为这个地方可能对此有所帮助。

所以,问:

如果您忽略了编程语言级别的明显通用经验,请举例说明使用嵌入式系统学习的内容,您可以在桌面环境中重复使用。

PS: 我应该注意到,我不是桌面领域的初学者 - 多年前我所有的爱好项目都围绕着桌面开发。

5 个答案:

答案 0 :(得分:3)

在验证操作和处理有限资源方面,嵌入式工程师通常更加自律。

这也可以转化为早期提出的异常处理策略。

典型的例子是检查malloc的返回值。我看到很少有桌面软件会不断检查它,但它在嵌入式环境中很常见。

答案 1 :(得分:1)

拥有干净,组织良好的源代码集的规则是转化为“桌面体验”的关键技能。 - 我注意到我编写和拾取的嵌入式项目通常比桌面版本更干净。

答案 2 :(得分:1)

许多只有桌面的开发人员可以从使用128K FLASH和32K SRAM的程序中获益,更不用说仅通过LED或两个按钮与用户进行有意义的通信。实现这一要求可能会减少应用程序行业中一些特有的代码膨胀。 : - )

即使您没有将轨道切换到直接的应用程序开发,嵌入式体验也可以很好地转换为驱动程序开发,以及低级实用程序和长期运行的服务。所有这些都是那些对成功的嵌入式开发人员而言几乎具有第二性质的学科仍然有价值的领域。

答案 3 :(得分:1)

在切换到嵌入式环境之前,我是近5年的桌面开发人员。 我发现在嵌入式环境中工作更具挑战性,因为我们必须处理内存限制,CPU速度慢,交叉编译问题等。

在学会了很多耐心,纪律和低级错综复杂的知识后,桌面开发应该像在公园散步一样简单。

答案 4 :(得分:0)

嵌入式系统上的状态机/事件驱动编程与桌面上的事件驱动编程没有什么不同。您在嵌入式系统(尤其是电信嵌入式系统)上使用这些编码技术的丰富经验应该会让您成为一名优秀的桌面程序员。

同样,您对通信协议的体验应该很好地传递到桌面。大多数桌面应用程序都参与了网络。