Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| | | | | | | |
Это фундаментальное образование 24.10.05 15:50 Число просмотров: 1586
Автор: amirul <Serge> Статус: The Elderman
|
> Это смешно, но факт. В предположении что раздел физики > "Электричество" и немного химии мы достаточно хорошо > усвоили в размерах школьной программы, в институте нам как > раз и давали сначала полупроводниковые приборы (диоды, > потом транзисторы) и усилители на них, операционные > усилители (линейный и ключевой режим), тригеры, регистры, > ... оперативная память, процессоры. Потом были лабы по 580. > Хотя почти в это же время на прикладной математике изучали > фортран.
Если ИЗНАЧАЛЬНО ставится целью, чтобы человек знал ВСЕ ЭТО, то лучше конечно же располагать все в такой последовательности. Вопрос был о том, с чего лучше начинать ПРОГРАММИРОВАТЬ. Ответ "с асма, потому что к нему все сводится" я довел до абсурда "с физики твердого тела, потому, что на самом деле все сводится к ней".
> > Асм - очень сложный, неочевидный и запутанный язык. > > Начинающему его вообще учить НЕ НУЖНО. > > Ну что там сложного, не понимаю. Десятока два инструкций, > немного директив и макрокоманд. > Асм стоит особняком от множества других языков только > потому что он низкого уровня. Во всех остальных уже > реализовано хотя бы вычисление по формулам. Ну да, мыслить > надо чуть по другому. Из-за этого он и может показаться > сложным. Все зависит от самого человека. Вроде как что > может быть проще выточить что-то напильником, однако для > кого-то это может показаться слишком сложным, проще на > станке с ЧПУ.
Было уже обсуждение. Оптимальная кодогенерация и оптимальное распределение регистров - NP задачи (не уверен насчет полноты). То бишь время экспоненциально. То есть оптимальность "ручной оптимизации" под большим вопросом. Ну а что до сложности
http://bugtraq.ru/cgi-bin/forum.mcgi?type=sb&b=8&m=127868
Итого, преимуществ нет (кроме мелких затычек для узких мест), а сложность (например абсолютное отсутствие избыточности, необходимой для контроля ошибок) в качестве недостатка делает асм неприменимым для реального программирования.
> > И как знание асма может в этом помочь (вернее как его > > незнание может помешать)? > > Разрядность, превышение разрядности может ставить в ступор > человека, который не знаком с битами переноса и > переполнения. Работа с указателями опять же.
Ни фига. На начальном этапе человеку совсем необязательно знать, что есть 33-й бит (на 32-битной архитектуре), куда переносится бит при переполнении. А биты-байты-слова-двойные слова вполне можно объяснить и без всяких асмов
|
<miscellaneous>
|
Эта... Есть повод для флейма... 21.10.05 14:17 [amirul, Den, J'JF]
Автор: Fighter <Vladimir> Статус: Elderman
|
На одном сайте натолкнулся на вопрос:
"с какого языка начинать учить азбуку программировния - с PASCAL (DELPHI) или идти путем Си (Java)?"
И несколько ответов:
с Бэйсика
с Паскаля
с любого структурированого, но лучше с Паскаля
по-любому лучше с Бэйсика.
Предлагаю обсудить эту тему. На мой взгляд лучше Паскаль.
|
|
Че-то отвлеклись все. Может пора закрывать ветку? Или не надо? 27.10.05 18:01
Автор: Fighter <Vladimir> Статус: Elderman
|
|
| |
Честно говоря, надоел уже этот флейм. Да и тема себя вроде как исчерпала. 27.10.05 18:17
Автор: Den <Denis> Статус: The Elderman
|
|
| | |
Так ветка может и в книгу рекордов Гинеса попасть. 27.10.05 18:36
Автор: DPP <Dmitry P. Pimenov> Статус: The Elderman
|
|
| | | |
Угу. Ну, ладно, подожду до вечера и закрою, если возражений нет. 28.10.05 13:14
Автор: Fighter <Vladimir> Статус: Elderman
|
|
| | | |
Да нет, в принципе забавно :) 27.10.05 19:56
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
Жалко только что про яву мало спорят. Я очень люблю когда при мне говорят слово "кроссплатформенный". У меня сразу слюноотделение резко повышается и может родимчик приключиться. Не знаю почему.
Потом z0 проснулся неожиданно - тоже хорошо. Когда ж мы в баню-то пойдем, родное сердце?! Как раз снежок выпал, сейчас самое милое дело на фонари залиться и выскакивать из парилки в сугроб во дворе :)
Где-то на 3-й странице рассказывают разницу между объектами и структурами - всюду жизнь!
|
| | | | |
"призрак видел все!"(с) 28.10.05 14:31
Автор: z0 <z0> Статус: Member
|
это не ты разве убеждал недавно петруху что в баню надо ходить общаться а не за гигиеной тела?
|
| | | | |
Гыг 27.10.05 20:12
Автор: Den <Denis> Статус: The Elderman
|
Мыж вроде как все вместе хотели пыво пить в ГСМе, азарт прошел?
|
|
Неудобно читать стало 27.10.05 13:24
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
Предлагаю отсечь ветки бессмысленного флейма, где не обсуждается вопрос корневого поста: "С какого языка лучше начинать учить программированию".
|
|
100% точный ответ. [upd] 26.10.05 14:31
Автор: Den <Denis> Статус: The Elderman Отредактировано 26.10.05 15:15 Количество правок: 2
|
Начинать надо с блок-схем алгоритмов!
Кто-то не согласен?
Знаю, знаю... Я, как всегда, испортил флейм. :))
|
| |
100% -е согласие! 27.10.05 05:06
Автор: Zef <Alloo Zef> Статус: Elderman
|
|
| |
никогда не рисовал блок-схем 26.10.05 15:28
Автор: Killer{R} <Dmitry> Статус: Elderman
|
|
| | |
Ты что в институте не учился? :-) 26.10.05 15:29
Автор: amirul <Serge> Статус: The Elderman
|
Рисовать то я рисовал, но только для отчетности (на некоторых лабораторных в отчете надо было привести блок-схему). Сначала программа, а потом по этой программе - блок-схема :-)
|
| | | |
Ту дык и с чего бегинерсу лучше начать? С Си или блок-схем? 26.10.05 15:46
Автор: Den <Denis> Статус: The Elderman
|
|
| | | | |
Как по мне блок-схемы вообще надо выкинуть на свалку истории. 26.10.05 16:53
Автор: amirul <Serge> Статус: The Elderman
|
Не видел ни одной уважаемой книжки по программированию, где были бы нарисованы эти уродцы. Книжки с UML видел, хотя он мне и не особо нравится, а вот с блок-схемами - нет.
|
| | | | | |
На свалку Истории? 26.10.05 17:03
Автор: Den <Denis> Статус: The Elderman
|
Они морально устарели? Принципы блок-схем перестали соответсвовать ныне используемым языкам?
Блок-схемы или некоторое их подобие перестали использовать при разработке больших проектов на этапе проектирования для связи между компонентами и модулями программ?
|
| | | |
учился 26.10.05 15:39
Автор: Killer{R} <Dmitry> Статус: Elderman
|
Но на физика. Из программухи были только численные методы. Сдавали проги, объясняя устно как все работает.
|
|
а функциональные языки лучше вобще не учить или просто начинать с них не стоит?? 25.10.05 21:55
Автор: zelych Статус: Member Отредактировано 25.10.05 21:55 Количество правок: 1
|
|
| |
Начинать не стоит [update] 26.10.05 11:17
Автор: amirul <Serge> Статус: The Elderman Отредактировано 26.10.05 14:28 Количество правок: 2
|
Но так как язык определяет вещи о которых ты способен ДУМАТЬ (не помню как назывался опыт, но для естественных языков это доказанный факт), то лучше выучить как можно больше языков и желательно с поддержкой как можно большего числа парадигм
--------------
Только что подумал, что ты мог неправильно употребить выражение функциональные языки (где то там внизу уже встречалось такое неправильно употребление). Функциональные языки это Lisp, Haskel, ML (OCaml, SML). Функиональную парадигму в той или иной мере поддерживают также мультипарадигменные языки типа python, tcl, ruby, perl
C/C++ и Pascal/Delphi никак нельзя назвать функциональными языками (хотя я встречал библиотеку темплейтов для C++, которая добавляет поддержку функциональной парадигмы в C++ - intelib называется)
Если же имелись в виду процедурные языки (не ООП), то учить их конечно тоже стоит. Если сильно хочется можно и начинать с них же.
|
| | |
Начинать надо с того, что ближе к машине 27.10.05 05:15
Автор: Zef <Alloo Zef> Статус: Elderman
|
Тем более, что ты ведь не знаешь, какие задачи жизнь тебе подсунет. Зачем загружать себя предметно-ориентированной лабуой, котоая, возможно, никогда не понадобится? Надо знать, как эта лабуда (компилеры) функционирует и пишется, тогда, при необхоимости легко осоишь любой язык, или создашь новый под конкретную задачу.
В этом смысле С - разумный компромисс между машинным и человеческим. Он уже понятен человеку, но на нем еще можно сделать все, что угодно. Другие языки позволяют делать только то, для чего они предназначены.
|
|
|