[ /b/ /u/ /rf/ /dt/ /vg/ /r/ /cr/ /lor/ /mu/ /oe/ /s/ /w/ /hr/ ] [ /a/ /ma/ /sw/ /hau/ /azu/ ] [ /tv/ /cp/ /gf/ /bo/ /di/ /vn/ /ve/ /wh/ /fur/ /to/ /bg/ /wn/ /slow/ /mad/ ] [ /d/ /news/ ] [ Главная | Настройки | Закладки | Плеер ]

Ответ в тред 44688. [Назад]
 [ Скрыть форму ]
Имя
Не поднимать тред 
Тема
Сообщение
Капча Капча
Пароль
Файл
Вернуться к
  • Публикация сообщения означает согласие с условиями предоставления сервиса
  • В сообщениях можно использовать разметку wakabamark
  • На данной доске отображаются исходные имена файлов!
  • Разрешенные типы файлов: music, vector, image, code, pdf, flash, archive, text, video
  • Тред перестает подниматься после 500 сообщений.
  • Треды с числом ответов более 100 не могут быть удалены.
  • Старые треды перемещаются в архив после 40 страницы.

No.44688 Ответ
Файл: Олени.jpg
Jpg, 26.12 KB, 567×375 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
Олени.jpg
Тред помощи начинающим свой долгий и тернистый путь в дебри программирования. А также необузданных оленей, код-мартышек, выбора ЯП и иных платиновых вещей.
Но в первую очередь всё-таки помощи новичкам. Всё, чтобы зашедший сюда в первый раз мог почувствовать себя как дома.
Главное - без фанатизма.

Предыдущий: >>32496
>> No.44691 Ответ
>>44688
Между прочим. Я надеюсь, все понимают, что треды в путеводителе(как и все остальные), которые дошли до бамплимита, можно пересоздавать и писать в путеводитель реквесты на замену. Этот тред долго не пересоздавали.
>> No.44696 Ответ
>>44691
Учитывая то, что тред ушёл в бамплимит в июне 2015-го...
>> No.44726 Ответ
Файл: Makbet.jpg
Jpg, 48.87 KB, 530×377 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
Makbet.jpg
>>44688
Добрый день. Скинул на один общий ресурс файл с базой формата sdf SQL Compact, В Visual Studio через SQL Server Compact ToolBox подключился к ней с другого компа, соединение есть, запросы выполняются, но когда пытаюсь в программе открыть SqlConnection выпадает ошибка:
"An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll
Additional information: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 5 - Invalid parameter(s) found)"

ConnectionString я копировал из успешного подключения SQL Server Compact ToolBox, только пришлось перед строкой поставить "@" чтобы не ругалось на "\". Получилось что-то вроде SqlConnection con = new SqlConnection(@"Data Source =\\dddd.com\DavWWWRoot\bbb\aaaa\2015\febr\Myfirstdb.sdf; Password = 1234"))
В чем может быть проблема?
>> No.44727 Ответ
>>44726
Помню, у SQLCE были какие-то проблемы с открытием файлов, лежащих в расшаренной папке. База не может открываться одновременно несколькими удаленными клиентами, или что-то такое.
>> No.44797 Ответ
Предложите какую-нибудь простенькую учебную задачку (или несколько задачек) совсем-совсем ньюфагу для реализации на С. Хелловорлд, калькулятор двух чисел и сортировку массива пузырьком уже написал.
>> No.44798 Ответ
>>44797
Покури описание какого-то lzw и реализуй упаковку и распаковку. Интереснои и несложно.
>> No.44799 Ответ
>>44797
Задача "о рюкзаке"(и связанный с ним подход "динамического программирования"), сортировка Хоара(быстрая), поиск по графу "в глубину". Трудно, но очень полезно и поучительно.
>> No.44800 Ответ
Уже очень много лет пытаюсь научиться программировать. И до сих пор, спустя много лет, постоянно испытываю жуткое желание побыдлокодерить. Но каждый раз, когда открываю книгу, у меня просто начинается приступ жуткой уныльщины и депрессии, как же это скучно и вообще какая-то хунта.

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

Говорят, что яп gamemaker, рпгмакеры и констракты прекрасно подходит для таких как я, но мне хочется именно на клавиатуре поклацать, а не мышкой водить.
>> No.44801 Ответ
>>44800
Просто ты не можешь в нормальную постановку задач и алгоритмы. Попробуй запрограммировать что-нибудь околоматематическое, типа решения какого-нибудь диффура с малым параметром при помощи комплексной схемы Розенброка и прогонки. Если ничего не понятно, гугли и разбирайся. Я не шучу, ну а что ещё тебе посоветовать, если гришь дескать "мозги не загружай @ дрочи синтаксис"?..

мимо студент-математик, который кодит в основном только численные методы
>> No.44802 Ответ
>>44801
Чуть более универсальный совет попробовать спортивное программирование, типа codeforces. И некотрые фишки языка на оптимизацию можно узнать, и алгоритмы капитально поднять.
>> No.44803 Ответ
>>44797
quick sort, простенькая игра в консоли типа крестиков-ноликов. В вузике нам давали написать свой shell, не такой крутой как bash, конечно, но всё равно это не так уж быстро и легко.
>> No.44806 Ответ
Файл: 0ecda3fa-5952-49de-9e03-e8262cd6934d.png
Png, 812.87 KB, 1000×1451
Ваши настройки цензуры запрещают этот файл.
r-15
Htmlacademy хорошая штука для изучения, с прицелом на верстку\вебдиз? Знаю что не яп, но тред в /u/ уже, поди, утонул что не достать.
>> No.44807 Ответ
>>44806
> Htmlacademy хорошая штука
Да, очень годный ресурс, чтобы в основы въехать.
>> No.44808 Ответ
>>44806
Мне вообще кажется, что нет ничего лучше чем чтение текста. Все эти видео, примеры и прочая - это всё обучение второго и третьего сорта. С ними ты никогда не можешь просто так взять и начать работать. А если практиковаться, то самое лучшее - это, всё равно, всё самому ставить и поднимать, всё самому делать.
>> No.44809 Ответ
>>44800
> оттачивать синтаксис
Ты до сих пор не мог выучить синтаксис одного яп? Его можно было осилить за день. Или меньше.
>>44801
> типа решения какого-нибудь диффура с малым параметром при помощи комплексной схемы Розенброка и прогонки
Это же пипец как бессмысленно. Ты будешь 99% времени учить математику в этой задаче. На задаче о рюкзаке ты бы хотя бы думал о программировании, а не о математике.
> ну а что ещё тебе посоветовать
Сам бы научился сначала, прежде чем советовать.
> мимо студент-математик, который кодит в основном только численные методы
В итоге кроме них ты ничего не будешь уметь кодить.
>>44802
Чахнуть над тяжёлыми задачами - только убить мотивацию. Без планового изучения теории графов и динамического программирования и прочего их не взять. Лучше взять книгу и читать её.
>> No.44810 Ответ
Посоветуйте, пожалуйста, сервис с задачками по python.
>> No.44811 Ответ
>>44809
Человек же совершенно ясно обозначил, что ему скучно набивать однообразные задачи, для выполнения которых достаточно знания синтаксиса. Вот ему и нужна задача, где вся соль не в синтаксисе, а в алгоритме и дотошном понимании происходящего.
P.S. Я как бы и не программист.
>>44801-кун
>> No.44812 Ответ
>>44809
> Ты до сих пор не мог выучить синтаксис одного яп? Его можно было осилить за день. Или меньше.
Хунту сказал. Нюансы разжевывания человеческого понимания логики в рамки яп и есть проблема синтаксиса. Просто тупо нужно разжевывать понятные тебе вещи в уровни-подуровни-переменные-группы, и при этом не абы как, а с соблюдением правил оформления.

>>44811
Иди сначала сам попробуй попрограммировать. Я сказал, что мне скучно изучать синтаксис. Допустим я хочу сделать игру, логически она не представляет сложности программирования, но проблема в том, чтобы эту понятную логику перенести на яп. Это все равно что объяснять всем известные и понятные вещи умственно отсталому дауну, надо все до мельчайших подробностей разжевывать, и не абы как, а по правилам. В итоге, вместо того, чтобы делать игру, ты заебываешься тем, чтобы объяснить яп, что ты хочешь.
>> No.44813 Ответ
>>44812
Попробуй погрызть clojure, там весело.
>> No.44814 Ответ
>>44813
Кложура это типа лишп на жвм?
>> No.44815 Ответ
>>44814
Ага, чуть почищенный от заебов 70-х.
>> No.44819 Ответ
>>44812
Чтобы "объяснить яп, что ты хочешь", надо самому понимать, что ты хочешь. Это и называется алгоритмом -- когда ты большую задачу разбиваешь на последовательность маленьких шагов. Предварительно, естественно, уяснив это для себя.
>> No.44820 Ответ
>>44819
> Это и называется алгоритмом
Нет. Реализация одного и того же алгоритм дробится на функции и классы сотнями способов. При этом от этого будет зависеть будущность твоей программы. Для этого есть куча сложных теорий, твои шаги - это просто ясли на этом фоне.
>> No.44821 Ответ
>>44812
> Просто тупо нужно разжевывать понятные тебе вещи в уровни-подуровни-переменные-группы, и при этом не абы как, а с соблюдением правил оформления.
Это уже не синтаксис.
>> No.44822 Ответ
>>44820
С. Макконнелл «Совершенный код», М. Фаулер «Рефакторинг», Банда четырех «Паттерны проектирования», Р. Мартин «Чистый код», Д. Кнут «Искусство программирования», Э. Хант, Д. Томас «Программист-прагматик».
>> No.44823 Ответ
>>44822
> Д. Кнут «Искусство программирования»
Ты не перепутай, это книга, что дарить кому-нибудь. Или на стенку ещё можно.
>> No.44839 Ответ
Файл: wc.png
Png, 40.74 KB, 573×528 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
wc.png
Li/s/p образовательный, подскажи начинающему. На пикрелейтед код из книги Кернигана и Ритчи "Язык программирования C", который подсчитывает число введённых с клавиатуры строк, слов и символов. Мне хочется немножко доработать, чтобы программа обрабатывала не поток с клавиатуры, а считывала из текстового файла. Вот мой попытки адаптации:

#include <stdio.h>

#define IN 1
#define OUT 0

int main()
{
   FILE *text;
   text = fopen("/path/to/text.txt", "r");
   int c, strings, words, symbols, state;

   state = OUT;
   strings = words = symbols = 0;
   while (c = getchar(text) != EOF)
{
  ++symbols;
  if (c == '\n')
   ++strings;
  if (c == ' ' || c == '\n' || c == '\t')
   state = OUT;
  else if (state == OUT)
   {
   state = IN;
   ++words;
   }
}
   fclose(text);
   printf("В файле text.txt "%d" строк, "%d" слов и "%d" символов.\n", strings, words, symbols);
}

То есть всё то же самое, только вместо nl, nw, nc в оригинале назвал переменные strings, words, symbols для большей наглядности, попытался реализовать чтение потока из файла и чуть-чуть поменял вывод. Но при компиляции GCC выдаёт:

counter.c: In function ‘main’:
counter.c:16:3: error: too many arguments to function ‘getchar’
   while (c = getchar(text) != EOF)
   ^
In file included from counter.c:3:0:
/usr/include/stdio.h:538:12: note: declared here
   extern int getchar (void);
        ^
counter.c:30:36: error: ‘d’ undeclared (first use in this function)
   printf("В файле text.txt "%d" строк, "%d" слов и "%d" сим
                                ^
counter.c:30:36: note: each undeclared identifier is reported only once for each function it appears in
counter.c:30:37: error: expected ‘)’ before string constant
   printf("В файле text.txt "%d" строк, "%d" слов и "%d" сим
                                 ^
counter.c -- имя файла с кодом. Не понимаю, на что он ругается в printf. Работу с файлом, видимо, организовал неправильно. Подскажите, а как надо было?
>> No.44840 Ответ
>>44839
Заменил getchar(text) на fgetc(text) и printf переписал в упрощённом виде как в оригинале: printf("%d %d %d\n", strings, words, symbols);. Программа при выполнении выдаёт 0 1 271, но это точно неправильный результат (в текстовом файле несколько строк, явно больше одного слова и меньше 271 символа). В чём я ошибаюсь?
>> No.44841 Ответ
>>44840
> В чём я ошибаюсь?
В том, что на этой доске найдётся хотя бы одна кодомартышка с квалификацией, достаточной, чтобы указать тебе на ошибки даже в таком простом примере.
>> No.44842 Ответ
>>44840
1. Экранируй кавычки внутри строки: \"
2. Оберни c = fgetc(text) в скобки.
>> No.44843 Ответ
>>44842
Спасибо, всё работает!
>> No.44849 Ответ
Файл: Build-Your-Own-Lisp-2014.pdf
PDF, 2441.02 KB, 842×1191, 195 страниц - Нажмите на картинку, чтобы скачать файл
Build-Your-Own-Lisp-2014.pdf
Кстати, для начинающих сиёбов - бодрая книжечка по запиливанию лишпа на коленке с нуля.
>> No.44850 Ответ
>>44849
> Build-Your-Own-Lisp
Why should I?
>> No.44858 Ответ
Хочу обмазаться Джавой, пробую сначала скомпилировать хэлловорлд, например отсюда: http://introcs.cs.princeton.edu/java/11hello/HelloWorld.java.html
Выполняю в консольке gcj HelloWorld.java -o 'Hello World Java', на что получаю:

/usr/lib64/gcc/x8664-slackware-linux/4.8.2/../../../../lib64/crt1.o: In function `start':
/glibc-tmp-4ccf9267168e2e05acf2dfdc0e86d1bb/glibc-2.17/csu/../sysdeps/x86_64/start.S:119: undefined reference to `main'
collect2: error: ld returned 1 exit status

Что не так и как побороть? Непонимат.
>> No.44861 Ответ
>>44858
4.1 Why do I get undefined reference to `main' errors?

When using gcj to link a Java program, you must use the --main= option to indicate the class that has the desired main method. This is because every Java class can have a main method, thus you have to tell gcj which one to use.


https://support.google.com/websearch/answer/134479?hl=en
>> No.44862 Ответ
>>44861
Понял, спасибо! javac скомпилировала без --main, в принципе, для gcj буду знать теперь.
>> No.44863 Ответ
>>44858
Зачем ты компилируешь жабу через gcj? Скачай человеческое JDK...
>> No.44867 Ответ
>>44850
Because you can. Я так писал наколеночный forth на асме (это несложно).
>> No.44869 Ответ
Файл: c0c64bceb7dbb8a90f24fa32f25f6a11.jpg
Jpg, 16.73 KB, 236×210 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
c0c64bceb7dbb8a90f24fa32f25f6a11.jpg
Насколько это сложно начать нормально писать под андроид? Скачал студию, глаза разбегаются - мавены, грэдлы, толстые конфиги на иксэмелях. Без студии жизнь есть (не фанат жирных идей)? У кого подобный опыт есть?

Есть только знания питона и жс на хорошем уровне. Выучить джаву, наверное, не составит особого труда.
>> No.44870 Ответ
>>44869
Конфигов один файлик манифеста, который не так уж часто приходится апдейтить. Билд конфиги поначалу даже трогать не надо. Всего-то знать джаву с андроид АПИ, синтаксис ресурсов и разметки. Без студии есть эклипс - та же история, только без грейдла.
>> No.44871 Ответ
>>44870
> Конфигов один файлик манифеста
Манифест можно и через студию править.
>> No.44872 Ответ
Файл: Screenshot_2016-03-02_14-10-20.png
Png, 33.78 KB, 661×412 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
Screenshot_2016-03-02_14-10-20.png
>>44871>>44870
А че она какая тормозная? Я даже оракл жидикей поставил, но, кажется, не особо повлияло. Эмулятор вообще миллион лет запускается, в кему/вбоксе и то гораздо быстрее.
Алсо, как исправить пикрелейтед (пустой проект)?
>> No.44873 Ответ
>>44872
Кто она? Если студия, то потому, что это, блядь, студия. На говно-ноуте тяжелые IDE с рефакторингом и шлюхами особо не погоняешь. И подожди минуту-другую, идея обычно фоном обновляет индексы и еще какую-то херню делает с кодом.
Эмулятор запускается долго и работает кончено, если ты используешь arm образы. Качай и запускай х86 картинки и проверь, чтоб комп поддерживал HAXM, который должен быть еще и включен.
Осло, есть инфа, что микрософт выпустили свой эмулятор ведра, который качается отдельно от вижуал студии. Не знаю насколько он пижже, но есть надежда.
Осло, если есть девайс с ведром, то лучше сразу запускать проекты на нем. Все будет быстрее в триллион раз. Сам так делаю, зависимость есть.


По твоей картинке - проект у тебя не пустой, а ошибка валится в рендерилке, которая нужна для чмошников программирования мышкой. Не все контролы поддерживают эту рендерилку. В частности FloatingActionButton рендериться в студии, по-видимому, не умеет. Внизу есть переключатель между нормальным кодом и этой херней. На девайсе и в эмуляторе твой проект будет работать нормально.
>> No.44874 Ответ
>>44871
Лучше не.
>> No.44881 Ответ
>>44849
Спасибо, анон.
>> No.44882 Ответ
>>44873
Идее кстати ещё часто нужно добавлять памяти в настройках же.
>> No.44893 Ответ
Есть тут погромисты под яОС? Хочу попытать счастья в этом направлении, но как-то страшновато. Если не сложно, поделитесь какими-нибудь годными ресурсами по теме (помимо стандартной документации).
>> No.44894 Ответ
>>44893

Изучение любых технологий 101:

1. Берем в руки любой опенсорц проект, использующий желаемую технологию.
2. Берем в руки гугл и СО.
3. Ковыряем исходники.
4. Делим проект на части, отдельно разбираем каждый компонент.
5. Пытаемся запилить свою фичу в рамках взятого проекта.
6. Повторяем несколько раз.
7. Готово.

Конкретно с яблоком есть, конечно, нюансы. Например, нужно иметь мак или хакинтош с железными нервами. Впрочем, для работы с XCode металл в нервах тоже пригодится. Objective-C вот еще во многом уж очень через жопу "не такой", Swift тоже далеко не ушел. Но это уже вкусовщина.
>> No.44895 Ответ
>>44893
На хекслете вроде что-то было.
>> No.44896 Ответ
Файл: sigh-cat.jpg
Jpg, 40.68 KB, 500×375 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
sigh-cat.jpg
>>44894
Слишком долго и утомительно...
>> No.44897 Ответ
>>44894
Спасибо, именно это я и хотел узнать, но не знал как сформулировать и в итоге ничего не спросил, а оставил вкладку открытой.
>> No.44899 Ответ
>>44894
Я, собственно, пока примерно так и делаю. Начал ковырять со Swift, вроде приятно работать. Правда с другими языками у меня и опыта то не было, разве что делфи и паскаль в шараге, не с чем сравнить. Энтри левел я вроде освоил (по крайней мере надеюсь на это), думаю что-то несложное сделать и попробовать в магазин выложить, чтобы не как лох быть.
Интересно ещё услышать, сложно ли было найти работу (особенно в мухосранске), с каких проектов начинали, ну и всякое такое. Ну и какие-нибудь ресурсы (>>44895 спасибо большое, я на похожем сервисе основы курил. яоси не вижу, кстати, может не там смотрел) для полного окунания в управление памятью, кор-графикс и другие вещи, к которым мне даже притрагиваться пока страшно.
>> No.44900 Ответ
>> No.44901 Ответ
>>44900
О, dmoz, я читал о нём в статье по SEO в 2007, но после этого так ни разу и не потрудился зайти на него и посмотреть, что там.
>> No.44902 Ответ
>>44901
Полистал - по большей степени какой-то музей чисто антикварных сайтов прямо из 98-го года.
>> No.44904 Ответ
>> No.44905 Ответ
>>44904
Вот я бы сильно не рекомендовал выбирать книги рандомно вместо изучения отзывов и рекомендаций. Особенно новичку, который ещё не знает, что к чему в индустрии. Это кончится тем, что появится чувство нехватки таланта, потому что прогресс будет идти вяло, а дерьмовые книги часто запутывают и вводят в заблуждение своих читателей.
>> No.44908 Ответ
>>44904 >>44904
Нет, но спасибо за совет.
Я почитал отзывы. Ту книгу, которая мне приглянулась, ругают, говорят ошибки и вообще автор сволочь. А вот книгу с The Basics of Swift хвалят, но его я вроде как знаю (хотя есть пару очень интересных пунктов, спасибо за наводку). А их можно как-нибудь... украсть? А то дороговато будет.
Думаю вот насчёт этих https://www.raywenderlich.com/store https://www.appcoda.com/swift/, если своровать получится опять таки. Не пробовал никто?
>> No.45001 Ответ
Привет, доброкодер.
1. Как стать крутым сишником?
2. Как писать хороший код? Я вот начал закапываться глубоко и немного утонул в указателях, malloc vs calloc vs *alloc, pragma once или include guard(и зачем это нужно) и прочая. Лабы уровня перемножения матриц и вычисления интегралов уже написаны. Кодстайл?
>> No.45018 Ответ
>>45001
> Как стать крутым сишником
Как стать крутым музыкантом? Практика, и только-то.
> Как писать хороший код
Погугли:
«C Programming Style» (Paul Krzyzanowski)
«Notes on Programming in C» (Rob Pike)
«C: Elements of Style» (Steve Oualline)
«C Style and Coding Standards for SunOS» (Bill Shannon)
Лучше вроде ничего нет.
> немного утонул в указателях
Это ненадолго.
> malloc vs calloc vs *alloc
На всякий случай, StackOverflow там -->>
>> No.45109 Ответ
Файл: 7924281534_561e5b29e1.jpg
Jpg, 61.47 KB, 331×500 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
7924281534_561e5b29e1.jpg
Смотрите, я более менее понял в шарпе делегаты. А вот не могу въехать в события.
Т.е. я вроде как суть улавливаю, что это просто делегат, который вызывает некоторый метод при наступлении события. Но как правильно их создавать, когда они нужны, а когда нет и вообще понять не могу.
>> No.45111 Ответ
>>45109
ruwiki://Наблюдатель_(шаблон_проектирования)
Не смотри на диаграммы классов и код, читай область применения - события в C# реализованы не совсем так, но задачу решают ту же. Можешь ещё читнуть главу про этот паттерн у Фрименов, тогда сразу поймёшь, когда они нужны, а когда нет.
>> No.45113 Ответ
>>45109
C#-боярин в треде.
Рассматривай событие как список делегатов.
Подписался на событие - добавил делегат в список.
Отписался - убрал.
Когда событие вызывается, то вызываются все методы в списке.
Попробуй еще реализовать асинхронный вызов события (когда каждый подписчик асинхронно вызывается), поймешь окончательно.
>> No.45187 Ответ
Файл: 1381773620220.jpg
Jpg, 70.43 KB, 562×780 - Нажмите на картинку для увеличения
edit Find source with google Find source with iqdb
1381773620220.jpg
>>44688
Аноны, с детства мечтал стать бородатым толстым умудренным опытом и ленью сисадмином, но жизнь несколько иначе решила, однако сейчас есть возможность осуществить мечту детства и встать на путь ковыряния серверов и писания скриптовых костылей. Так вот анон, нужна помощь - с чего мне начать? Какие книжки\курсы пояснят мне за сети, линукс, баш и прочее веселье? Буду в двойне благодарен, если с самых основ но не на уровне истории и жизнеописания давно минувшего ПО и разработчиков этого ПО.
>> No.45191 Ответ
>>45187
Мой кореш с нулевым багажом знаний устроился принеси-подайкой в серверную какой-то фирмы такси. Тамошний админ его на практике, без книжек, обучал всяким мудростям и сейчас кореш уже сам админит целую айтишную контору. Поражаюсь его успеху, учитывая что он до сих пор двух слов по-английски связать не может.
>> No.45194 Ответ
>>45187
Ричард Стивенс, все книги (включая сетевые протоколы в подлиннике).
>> No.45198 Ответ
Анон,

я уже года два как питоню, но так и не понимаю, что такое итератор и нахуя он нужен, когда есть списки.
Можешь на пальцах объяснить ситуацию, когда итератор просто необходим?
>> No.45199 Ответ
>>45198
Плохие новости, Ватсон. Вы уже два года не умеете в гугл.

https://www.google.com/?q=python%20iterator%20vs%20list
приведет тебя на
http://stackoverflow.com/questions/628903/performance-advantages-to-iterators
оттуда ты попадешь на
http://markmail.org/message/t2a6tp33n5lddzvy
или же сразу прочитаешь TL;DR:
For small datasets, iterator and list based approaches have similar performance. For larger datasets, iterators save both time and space.
>> No.45200 Ответ
>>45198
Итератор - это абстракция, описывающая последовательность обхода или обработки каких-то элементов. Это может быть любая структура данных, не только просто список, но и всякие там дереьвя. И это может быть вообще не структура данных, а выбора из неё или ввод данных откуда-то. Ты можешь сам как угодно программировать итераторы(создовая кастомные реализации) и получать из них разные последовательности. Тот кто обходит итератор уже не будет думать, как устроен сам механизм обхода. Причём код использующий итератор может оставаться прежним, если механизм обхода или источник данных поменяются, стоит только заменить итератор на другой. Другой способ получит то же самое - использовать функцию, которая принимает на вход колбэк, в который попдает элемент, но так ты только в одном направлении и без остановки идёшь и не можешь запомнить позицию. А итераторы могут быть двунаправленными, обход по ним можно прервать брейком, итератор можно запомнить в переменной.
>> No.45201 Ответ
>>45200
> итераторы могут быть двунаправленными
В питоне?
>> No.45209 Ответ
Правда что для обучения программированию надо 10 лет, или на худой конец 10 000 часов?
Так во всяких статейках и книжонках говорят.
>> No.45211 Ответ
>>45209
Нет, нас в вузике вебмакакингу на пхп за один семестр научили.
Правда перед этим нас учили паскалю, дельфе, ассемблеру, сишке, плюсам, жабке, прологу, сетям, базам данных, дискретке, алгоритмам.
>> No.452