Ответы:
книг что-то и не припомню, которые на этом концентрируются
лично от себя могу посоветовать чаще использовать тип данных struct. это первый шаг к ООП
кстати говоря, думается, применение принципов ООП (насколько это возможно в С) может сослужить хорошую службу не только сделав код более читаемым, но и более гибким
в общем, думаю, надо копать именно в эту сторону. она мне видится наиболе оптимальной
о, и книгу вспомнил "object-oriented programming with ANSI-C"
http://www.cs.rit.edu/~ats/books/ooc.pdf
не читал, правда, поэтому не знаю насколько она подходит для человека не знакомого с ООП (коим вы может быть являетесь), однако неоднократно сталкивался с тем что её называют "библией" ((%
моё внимание она привлекала чисто из академического инереса (да вот читать некогда, не приоритетна), надеюсь никогда на практике не пригодится, ибо на С писать после С++ и С# это ад
Даже на ассемблере широкое использование "глобальных" переменных и отсутствие модулей не есть хорошая практика, это совершенно справедливо и про си. Научитесь использовать функции и передавать им параметры разными способами и жизнь станет лучше.
Всё правильно, так и делай. Захочешь объектно-ориентированного, тогда будешь писать на C++ и Java.
Про "области видимости C" - гугли по этой фразе. Если коротко, то переменная не видна за пределами фигурных скобок. В частности за пределами функций.
я не говорил о том что нужно использовать ООП, я говорил о том что можно воспользоваться некоторыми его принципами в плане структурирования кода
например структурировать данные и выносить их в модули с функциями, с ними взаимодействующими, активно использовать пространства имён. при этом сами функции должны быть как можно более узко специализированы. это уже некисло поможет структурировать программу, а как результат облегчит процесс отладки и повысит читаемость
zloidooraque, прошу прощения, но вы на С писали?:)
С каких пор его синтаксис стал стал адовым?
Структурирование данных (вне контекста ООП) и использование модулей, вообще-то, в С++ именно от C.
Ну и, наконец, об отладке - код на C отлаживается, как правило, намного проще чем код на С++ из-за его прозрачности и низкоуровневости.
это смотря сколько его нужно написать.
zloidooraque, тогда могу вам сказать на полном серьезе - С и С++ это разные языки и не надо их мешать, а так же не надо склоняться к какому-либо из них.
Я работал на очень больших (много сотен тысяч строк) проектах полностью на С и С++ (приблизительно 60 на 40%) и прекрасно знаю о недостатках обоих языков. И именно это знание не дает мне склоняться к какому-либо из них - каждый из них прекрасен по-своему. Чего и вам советую.
11 лет назад