Многоразовые знания переходят с Embedded на Desktop - PullRequest
2 голосов
/ 17 марта 2009

Я подумываю о том, чтобы «слегка» сменить путь, перейдя к разработке настольных систем (VC ++, MFC, C # и т. Д.) После примерно 8 лет разработки встраиваемых телекоммуникационных систем (C, MAKE, Symbian, 100 компиляторов и т. Д.) .

Однако меня беспокоит то, что мой опыт работы со встроенными системами может не дать мне особой пользы при разработке настольных систем. Например, что специфичные для домена проблемы и среды, с которыми я так долго работал, до сих пор не дают мне много возможности договориться о зарплатах, поскольку на настольном компьютере это мало что стоит.

Я думаю, что это место может быть хорошим для вклада в это.

Итак, Q:

Если вы не принимаете во внимание очевидный общий опыт на уровне языка программирования, приведите пример того, что вы узнали о работе со встроенными системами, которое вы могли бы использовать при работе в среде рабочего стола.

PS: Должен отметить, что я не новичок в области настольных ПК - поскольку много лет назад все мои хобби-проекты были сосредоточены на разработке настольных систем.

Ответы [ 5 ]

3 голосов
/ 17 марта 2009

Инженеры встраиваемых систем обычно более дисциплинированы, когда речь идет о проверке операций и работе с ограниченными ресурсами.

Это также может привести к разработке стратегии обработки исключений ранее.

Наиболее существенным примером является проверка возвращаемого значения malloc. Я видел очень мало настольных программ, которые постоянно проверяли это, но это обычное явление во встроенных средах.

1 голос
/ 18 марта 2009

Я был разработчиком настольных компьютеров почти 5 лет, прежде чем перейти к встроенной среде. Мне кажется, что работать со встроенной средой сложнее, поскольку нам приходится сталкиваться с ограничениями памяти, медленной скоростью процессора, проблемами кросс-компиляции и т. Д.

Изучив много терпения, дисциплины и тонкостей низкого уровня, разработка рабочего стола должна быть такой же простой, как прогулка в парке.

1 голос
/ 18 марта 2009

Многие разработчики только для настольных компьютеров могут извлечь выгоду из опыта установки программы на 128 Кбайт FLASH и 32 Кбайт SRAM, не говоря уже о значительном общении с пользователем только с помощью одного или двух светодиодов и двух кнопок. Выполнение этого требования может снизить вероятность некоторого увеличения числа кодов в индустрии приложений. : -)

Даже если вы не переключаете треки на прямую разработку приложений, встроенный опыт хорошо подходит для разработки драйверов, а также для низкоуровневых утилит и для долго работающих сервисов. Все это также области, в которых дисциплины, которые являются почти второстепенными для успешного разработчика встроенных приложений, остаются ценными.

1 голос
/ 18 марта 2009

Дисциплина наличия чистого, хорошо организованного набора исходного кода - ключевой навык, который хорошо переводит на «опыт рабочего стола». - Я заметил, что встроенные проекты, которые я написал и поднял, часто НАЧИНАЮТ чище, чем их настольные аналоги.

0 голосов
/ 30 мая 2009

Конечные автоматы / программирование на основе событий во встроенных системах ничем не отличается от программирования на настольных компьютерах. Глубокий опыт этих методов кодирования во встраиваемых системах, особенно в телекоммуникационных встраиваемых системах, должен сделать вас отличным программистом для настольных компьютеров.

Точно так же ваш опыт работы с протоколами связи должен хорошо переноситься на рабочий стол. Большинство настольных приложений связаны с сетью.

...