26.06.2013, 17:44
(26.06.2013 06:24)SWAT писал(а): [ -> ]Это все хорошо. Но! Если человек хочет освоить, для начала, программирование на Си, то ему не охота ковыряться в вещах напрямую не связанных собственно с написанием програм. Порой для начинающих очень трудно осознать полезность изучения всяких систем сборки, инструментов для работы с бинарниками, принципов компоновки программ и т.д. - ему просто хочеться взять книжку "Как выучить Си за неделю", запустить IDE, написать пример с єтой самой книжки и что-бы он заработал безо всяких танцев с бубном. Ковыряния с мейкфайлами и тулзами вещь конечно занятная, но далеко не первоочередная для изучения программирования, скажу даже больше - это опасная вещь, так как может с легкостью отбить любое желание программировать на Си, так как спотыкаясь постоянно на проблеммах со сборкой элементарных программ для embedded систем, я уже не говорю про их отладку, человек волей-неволей поинтересуется как обстоят с єтим дела на других платформах и языках, увидит ту же Джаву или Шарп и что там все намного проще, забьет на Си, С++ и Дримкаст вместе с ним... Короче говоря, начинать непременно нужно с десктопа и изучения базовых принципов Си, уже потом переходить на embedded систему. Могу посоветовать очень толковую книгу чисто по Си, Полный справочник по С, 4-е издание Герберт Шилдт(25.06.2013 20:00)cybdyn писал(а): [ -> ]програмировать лучше учиться на платформе домашнего компа, а потом уже переходить на присты...
для компа есть хорошие среды разработчика - там и отладчики и много чего. а как принцип поймёшь дальше по списку.
а так будет не совсем правильное предстаевление...моё мнение
Ну здесь спорная на самом деле ситуация. Дело в том что под домашний комп на столько легко и просто что-то писать и отлаживать, что все низкоуровневые процессы вообще обходят стороной программиста, он даже не подозревает что там вообще твориться, у него все через редактор кнопочками управляется и он даже не парится. В случае с embedded системами (консолями в том числе), все не так просто. Полноценные IDE с SDK есть только у официалов, а обычные же люди пользуются куда более простыми инструментами и как правило с очень ограниченными возможностями.
Я что хочу сказать то. Программированием под домашний комп, можно познать только синтаксис языка и стандартные библиотеки и на этом все. А это на самом деле займет от 2-х дней до 2-х недель (в зависимости от опыта), а дальше уже тупик. Если стоит цель научится программировать именно под консоли, то задерживаться на компе не стоит.
И представление о программировании и сборке будет куда более полное именно после того, как ты начнешь возиться с такими задачами, как например написание makefile. В случае с компом же, там все это делает IDE, а значит нет полноты картины всего процесса. Конечно это не зря было скрыто, это облегчение жизни программистам, но в случае с embedded это придется изучить как не крути, ты же не под винду писать собрался.