Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Что сейчас нужно изучать?
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > Образование в области электроники
Kalyan
Добрый вечер. Я инженер электронщик по образованию. В данный момент занимаюсь программирование микроконтроллеров на си(stm32 в основном).
Хотелось бы изучить какой нибудь объектно ориентированный язык прогограммирования и чтобы в будущем это мне пригодилось.

Может посмотреть в сторону с++ и программирования под Линукс?
Посоветуйте пожалуйста.
_Артём_
Цитата(Kalyan @ Feb 7 2014, 22:59) *
Может посмотреть в сторону с++
Почему именно Си++ на Линуксе?
Разве для stm32 (или для AVR) нельзя проекты на Си++ делать?
kolobok0
Цитата(Kalyan @ Feb 8 2014, 00:59) *
...Хотелось бы изучить какой нибудь объектно ориентированный язык прогограммирования...
и программирования под Линукс?..


так-же не совсем въехал как перисекаются льюникс и ОО программирование - кхм... но если танцевать от печки то...
1) сам по себе ОО язык - это в первую очередь продолжение ООА и ООП т.е. Объектно-Ориентированного Анализа и ОО Проектирования. Т.е. надо
начинать с этих вещей. Тогда у Вас не будет каши в голове и в текстах программ. Какой язык из семейства ОО Вы потом выберите - дело вкуса и
своих взглядов. Очень многие программисты пишут на си плас плас в стиле азма. Так-же встречаются энтузиасты по созданию своих кирпичей
под названием библиотеки. Или юзанья так называемых патернов(произносится с придыханием). Хотя это всё поперёк ОО подхода.
2) Я бы посоветовал для ОО копания - начать с книг одного из основоположников UML-я Гради Буча. У него есть популярная у профессионалов
в данной области книга - "ООА и ООП с примерами на языке си плас плас" как то так.

ОО методология - одна из самых эффективных для решения задач от жизни. Это её плюс. Минус - надо понимать как её использовать.
Т.е. иметь практику. К сожалению на многих фирмах, занимающихся разработкой софта полностью отсутсвует фаза анализа и проектирования.
Люди пишут на данном языке в стиле азма, сами не понимая насколько низко они вынимают возможности самого языка и метода в частности.
Типичные признаки лоховства при разработки:
куча классов (больше 100 вне зависимости от задачи!),
нет чёткой привязки модели бизнес слоя к проф среде от заказчика,
отсутствия команды как единого организма,
две крайности состояния кода - подпорочки либо революционные "до основания всё разрушим"....
и т.д...
x893
я бы предложил английский
а потом уже не важно сколько плюсов, решёток, и т.п.
Lotor
Учите английский и java.
agregat
Цитата(Kalyan @ Feb 7 2014, 23:59) *
Добрый вечер. Я инженер электронщик по образованию. В данный момент занимаюсь программирование микроконтроллеров на си(stm32 в основном).
Хотелось бы изучить какой нибудь объектно ориентированный язык прогограммирования и чтобы в будущем это мне пригодилось.

Может посмотреть в сторону с++ и программирования под Линукс?
Посоветуйте пожалуйста.


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

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

Специалист знающий английский на уровне полуразговорного и одну из вышеуказанных областей гарантированно востребован.
Только не пытайтесь учить английский дома, это отнимет у Вас годы, идите на курсы, сэкономите полжизни sm.gif
Marusis
Пригодится в жизни все, главное чтоб было желание
Informatikum
Как ваши успехи? Есть ли какие-нибудь результаты за пол года в освоении С++, Linux or English?
DASM
Цитата(agregat @ Feb 9 2014, 08:11) *
Человек знающий хорошо хотя бы одно из них получает очень хорошие деньги, человек знающий все три вообще бесценен.

Угу, без цены потому что, то есть копейки. Автору советую учить китайский и шахтерское ремесло. Скоро пригодится.
BlackOps
Цитата(DASM @ Jul 9 2014, 15:27) *
Угу, без цены потому что, то есть копейки. Автору советую учить китайский и шахтерское ремесло. Скоро пригодится.

Очень умно.
DASM
Цитата(BlackOps @ Jul 10 2014, 10:10) *
Очень умно.

Ну смотрите сами рынок труда. Зарплата разъездного билетного кассира 70 тр у нас в Питере. Поглядите зп линуксоидов, (причем к ним, окромя английского и С++ предъявят еще какой-нить MySQL, Qt, Java и еще кучку аббревиатур.) Окажутся теже самые деньги, да еще и на позиции старшего программиста только. Ну по знакомству может до 100-ки доберетесь и все - планка. У меня знакомая узбечка, мясом торгует - куда выше 100-ки имеет, правда по форумам ей лазить нет времени. А про китайский я тоже не зря, уже многие даташиты одновременно пишутся только на ангийском и китайском, а некотороые - только на китайском. Только им (китайцам) прогаммисты чужие не нужны совершенно, своих хватает. Ну и посморите ситуацию на Дальнем Востоке, где уже куча китайских предприятий (хозяин - китаец), а руссские - просто батрачат. Пока еще на теплых местах - теплицы там убирают, помещения. А потом и таких мест не будет - останутся шахты и рудники, куда поднявшиеся по уровню жизни китайцы уже не полезут.
Myron
Цитата(DASM @ Jul 10 2014, 03:07) *
Ну смотрите сами рынок труда. Зарплата разъездного билетного кассира 70 тр у нас в Питере.


Еще с десяток лет и эта профессия вымрет. Просто вагон сам будет вышвыривать пассажира без билета. Или даже не впустит его в салон. Кассирам придется переучиваться. А для программиста просто появится новый язык для освоения, который освоить будет много легче, чем новую профессию.
DASM
Цитата(Myron @ Jul 10 2014, 18:35) *
Еще с десяток лет и эта профессия вымрет. Просто вагон сам будет вышвыривать пассажира без билета. Или даже не впустит его в салон.

Ну с текущими темпами развития ситуации - просто расстреливать будут.
Kopa
Цитата(Myron @ Jul 10 2014, 18:35) *
А для программиста просто появится новый язык для освоения, который освоить будет много легче, чем новую профессию.

Язык обычно более-менее эвалюционирует вместе с уровнем и направленностью решения текущих плохо решённых или нерешённых задач.
И какие задачи, соответственно, и как будет решать предполагаемый гипотетический язык программирования?
Myron
Цитата(Kopa @ Jul 10 2014, 11:06) *
Язык обычно более-менее эвалюционирует вместе с уровнем и направленностью решения текущих плохо решённых или нерешённых задач. И какие задачи, соответственно, и как будет решать предполагаемый гипотетический язык программирования?


Не допускать внутрь пассажиров без оплаченного проезда.

ViKo
По теме - учите C# - красивый язык! И книга тоолстая имеется Г. Шилдта, не считая кучи других.
Maverick
если будете учить язык С/С++/С# для ПК то надо еще и
- Понимание платформы Windows (.NET, Win API);
- Понимание принципов ООП;
- Знания баз данных SQL, T-SQL, т.е. опыт работы с MS SQL ну и noSQL;
- не забываем про протоколы http / tcp, т.е. программирование сетевых приложений;
- умение параллельного/многопоточного программирования
- ну как же без понимания структур данных и алгоритмов - математика-математика (например Knut "Iskusstvo programmirovaniya")


напоследок - захотите проверить свои знания по с#:
вопросы для начинающих

+ желательно знание Pyton, Java, PHP - не помешают...

про знание английского языка вообще молчу - это уже своего рода стандарт и не подлежит обсуждению

что я хочу сказать, что сейчас быть востребованным програмистом на С/С++/С# довольно сложно - конкуренция и требования высокие, , кроме самого языка программирования нужно знать "вагон и маленькую тележку"... ...
Cвинец
Цитата(ViKo @ Jul 11 2014, 09:49) *
По теме - учите C# - красивый язык!


Интересные советы. Последние несколько лет на С# клепаю разные программки для работодателя. ЗП около 50тр в Сибири и вряд ли вырастет. И скукотища страшенная, особенно под ASP.NET...

А самое главное, подрабатывать этим делом - гнилое дело, т.к. из программы на NET очень легко выковыривается исходник. После чего теряются только названия переменных, а весь результат вашего труда уплывает первому же покупателю. Очень большая подлянка от MS. И обфускаторы не помогут.

В этом плане защита в микроконтроллерах просто на порядки сложнее. И конкуренция, имхо, МЕНЬШЕ.
DASM
Ну микроконтроллер часто бывает нужно к ПК подключить, юзер интерфейс простой написать.. тут .НЕТ по-моему удобен.
syoma
А я бы из того, чтобы в будушем пригодилось, предложил изучить МАТЛАБ, только не голый, а симулинк, стейтфлоу и тулбоксы всякие типа DSP, АСУ, валидейшн и вэрификэйшн, автоматическую генерацию кода.
Во первых - интересно, во вторых можно кучу задач решать, для которых раньше проги искали, ну и в третих - тоже язык.
В европах счас очень востребователены специалисты, которые могут решить проблему управления путем моделирования контроллера в симулинке и затем встраивания его в процессор или ПЛИС. При этом верификация производится начиная с модели и заканчивая железом.
Kopa
Часть будущего, а может уже и настоящего (только какая) за контроллерами подобными этому GA144
Попробуйте к нему эффективно применить C или C++ smile3046.gif

P.S. Даже есть группа в контакте созданная для освоения данного направления. Микросуперкомпьютер на основе GA-144
syoma
Цитата(Kopa @ Jul 14 2014, 15:12) *
Часть будущего, а может уже и настоящего (только какая) за контроллерами подобными этому GA144
Попробуйте к нему эффективно применить C или C++ smile3046.gif

А помоему это больше похоже не ПЛИС, и HDL к нему нормально должен примениться.
andrew_b
Цитата(ViKo @ Jul 11 2014, 13:49) *
учите C#
Да кому он нужен. Некрософт вон на глазах загибается.
DASM
Цитата(andrew_b @ Jul 15 2014, 12:22) *
Да кому он нужен. Некрософт вон на глазах загибается.

Ага, и США загибаются... шоб мне так загибаться. Хотя исходя из этого https://sites.google.com/site/pydatalog/pyp...amming-Language явно стоит смотреть на Java, тоже приличный язык.
jhm
На мой взгляд ООП хорошо изучается на примерах юзер-интерфейса. Нужно создавать много одинаковых обьектов, добавлять к ним новые своства, и т.д. Это позволяет понять для чего нужно ООП.
Для МК ООП полезно только на высоких уровнях сложности приложений.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.