dr-mart

Программирование и я. Отчаяние

Хочу сразу поблагодарить всех, кто комментировал предыдущий пост. Вы знаете, тут на смартлабе люди жалуются, что срач и качество комментариев низкое. Но как я понял, срач всегда притягивается на соответствующие темы постов. Если ты пишешь о высокоинтеллектуальных вещах, то нежелательный контингент отваливается сам собой, поэтому в комментах сложилась очень теплая и конструктивная атмосфера. Ещё раз спасибо!

Итак, с момента публикации моего предыдущего поста про моё изучение C# прошло еще [42->57] 15 часов чистого времени. Я по-прежнему иду по книге Стиллмена Изучаем C#
Программирование и я. Отчаяние
Первые 250 страниц (которые уже прочел три года назад) прошли относительно легко. Но теперь, такое ощущение, что с каждой страницей я начинаю увязать в содержании всё сильнее и сильнее. Вещи становятся всё более абстрактными, они уходят всё дальше от жизни и пока не ясно, как это всё использовать.

Сейчас я на 304 стр. В частности я добрался до иерархии классов. Ладно бог с ним, когда один класс наследует какие-то свойства другого. Но когда вместо классов возникают ещё и интерфейсы, плюс параллельные классы начинают «тырить» друг у друга методы и свойства, становится совсем тяжко. Ощущение что с каждой страницей этой книги я увязаю в болоте всё сильнее и сильнее. Но я не отчаиваюсь, и все равно собираюсь прочесть её целиком, не пропустив ни одной странички, не упустив ни одного задания. Хотя честно говоря, я уже несколько не смог сам решить, потому что уже не совсем вдупляю).

Как бы вам это объяснить? Ну вот есть синтаксис у языка. Ты начинаешь его учить. Вместо того, чтобы начинать говорить помаленьку, на тебя сгружают все самые сложные языковые конструкции, которые перегревают твой мозг — ты просто не в состоянии удерживать всё усложняющуюся конструкцию синтаксиса у себя в голове… И в отсутствие обширной практики просто вызывают блокирование мозга). Вот так я себя чувствую углублясь в детали иерархии классов...

Понаблюдать за моим мучениями можно например тут (Я открыл видосики, которые записываю сам для себя, чтобы во время проговаривания, лучше усваивался материал):
 

Полный плейлист моих мучений тут.

Как бы мучительно процесс не шёл, я испытываю натуральное удовлетворение от того, что мой мозг пытается думать и от того, что я делаю нечто, что мне всю жизнь казалось недоступным мне.

p.s. всё ещё не курю ни одной.
★17
144 комментария
Борьба с самим собой достойна уважения!
avatar
Юрий Романов, Пол-года назад попытался начать учиться по этой книге — не пошло, такое чувство, что перевод корявый, что-то постоянно смущает в этой книге. (может то что, я уже давно не школьник))
avatar
Юрий Романов, да, видимо неплохая книжка. спасибо, сохранил
ну, я всегда всем советовал изучать c# с книги Эндрю Троелсена. Легкая, понятная, содержательная.
А после некоторых лет программирвоания почитать уже Рихтера.

Серию этих книг знаю, они всегда казались какими-то странными и не оч содержательными.

#Тиманездавайся
avatar
Aberkromb Garell, в троелсене 1100 страниц!!!
Тимофей Мартынов, дело не в страницах, дело в подходе. Не нужно учить синтаксис, нужно понять принципы и логику, все, после этого глубоко параллельно какой-то там синтаксис, и где и сколько страниц, если другой язык, просто смотришь справочник. И эта 1100 страниц не нужна, на практике все равно задачи примерно одинаковые.
avatar
Тимофей Мартынов, да и вообще после 30 крайне полезно изучать что то новое. Чтобы к 50 в бревно не превратится. Я вот для этого шахматы штудирую. Башка взрывается от дебютов примерно как у тебя сейчас. Ну и как от матана на первых курсах
avatar
Тимофей Мартынов, все 1100 не нужно, потому что там есть такие вещи как Энтити, АСП, Рефлексия — все это можно опускать на раннем этапе. Потом почитать про Энтити и после базового опыта будет на много легче и зайдет как по маслу. Рефлексия вообще может не скоро понадобиться, если вообще когда-нибудь пригодится. Асп это вообще веб. 
avatar
Aberkromb Garell, так ведь когда ты начинающий, ты представления не имеешь, что тебе нужно а что нет, и читаешь все подряд в итоге
а интерфейсы нужны будут при программировании роботов?
avatar
onlyfly, сомневаюсь
Просто это элементов ООП функционала
Тимофей Мартынов, нужны будут.
Просто для тебя интерфейс — это якобы визуальное взаимодействие человек — компьютер.
А на самом деле это средство взаимодействия классов (объектов — экземпляров классов) друг с другом.
Поэтому у тебя может быть консольное приложение, которое ни строчки на экран не выводит, но твои классы вовсю используют интерфейсы.
avatar
Рустам TradeInWest.ru, ты что, тоже программист?
Тимофей Мартынов, а то. :-)  Программист, правда отходящий от дел.
Ограничение дневных убытков — Лимитер  — мое детище.  Написано на C# с использованием API брокера.

Успешно используется нашими клиентами.
avatar
onlyfly, будут..., но для начала на них можно не зацикливаться. Сразу и правда сложно понять зачем они нужны…
p.s. всё ещё не курю ни одной

а в планах когда начать?(шорт филлипа давит))
avatar
Hannes, через год
Тимофей Мартынов, пипец я попал)
avatar
Я учился сам на примерах (язык был php) причем чем проще пример тем быстрее понимаешь что там...
До этого правда был Basic и Паскаль (в школе было), а за ним Дельфи — ОО Паскать т.с. и немного Асма :)
Но вот C и C# до сих пор для меня загадки :)
Иногда правда на нем ковыряю, что надо по мелочи, но в 80% случаем лезу на форумы, т.ч. я хз как Тимофею это удается…
avatar
Свой Мужик, я пока просто книгу читаю))
Тимофей Мартынов, Послушай совета бывалого. Никогда просто так не читай книгу, всегда что-то делай. Придумай себе проект, например, попробуй делать свою собственную биржу. Только когда ты будешь пробовать применить знания ты начнешь усваивать материал. Просто читать и переписывать примеры из книги… толку не будет.
avatar
Stepan Romankov, это совершенно правильно и логично!
Есть такой совет для изучающих английский язык: «Цель обучения — практическая, а не академическая.» То есть страх совершить ошибку в разговоре — это парализующая, антисозидательная вещь. Думаю, справедливо и для языков. Говнокод — это нормально, вникать в каждую строчку, головой поехать можно. Хакеры взламывают неизвестные языки просто понимая общую задачу, которую код выполняет, а ньюансы понимаются потом. Перфекционизм — лучший друг невроза.
Владимир, я тож думал начать с этой стороны, — не пошло
А может не надо гнать лошадей? Задача поставлена, все сделается в свое время. 
avatar
Femina, никто и не гонит)
Тимофей, как мне кажется, ты напрасно начал с классов, с объектно-ориентированного программирования. Для нужд трейдинга вполне можно обойтись и без этого.

Действительно, классы, наследование, инкапсуляция и т.п. на первых порах могут показаться слишком абстрактными и сложными понятиями. Можно, для начала, изучить процедурный «чистый» C. 

Как говорят про трейдинг — это не спринт, это марафон. К программированию это относится в той же степени. 

PS. Молодец!
Андрей Касаткин, да я это все понимаю
Андрей Касаткин, нельзя… Практически во всех API классы… Изучать сначала С, а потом С# — время терять... 
Сергей Гаврилов, ваше мнение понятно, но все же разрешите не согласиться с ним по следующим причинам:

1) Вполне можно использовать API с классами не особенно разбираясь в их устройстве, а синтаксис для их использования подсмотреть в примерах из документации. Для такого применения вполне хватит понимания, что просто есть такая «штука» как «классы».

2) Для начала, неплохо бы, изучить основные приемы программирования: операторы, типы данных, циклы, условия, функции и т.п. И попрактиковаться в них. Эти знания в любом случае пригодятся как в чистом C, так и в C++/C#/Objective-C. Да и в любых языках вообще.

3) Ну и, разумеется, я не утверждаю, что изучать классы не нужно совсем. Просто их легче воспринимать, когда уже знаком с базовыми приемами в программировании. Впрочем это только из моего личного опыта, я учился довольно давно, когда ООП было в диковинку. Вполне допускаю, что для некоторых такой способ — избыточная трата времени.
И в отсутствие обширной практики просто вызывают блокирование мозга
так и есть. Вывод: начинай пляски от практики.
До тех пор пока тебе не нужны сложные взаимодействия классов даже не забивай этим голову. Появится задача — будешь искать путь решения и голова заработает от правильных вещей.

Вот тебе пример задачи, когда нельзя просто наследовать классы.
Есть два ключевых объекта: «лимитный ордер» и «позиция».
Позиция порождается ордером, значит подчинение «по простому» должно быть такое: объект «ордер» управляет объектом «позиция». На практике надо придумывать сложное двухстороннее взаимодействие. Возникают сложные ситуации (частичное исполнение ордера, позиция без ордера и т.п.) и появляется конкретный запрос в голове «как решить?». Вот тогда и надо читать учебник.
Fry (Антон), большинство прогрессивных и модных технологий в программировании решают одну единственную задачу — притормозить всеускоряющийся рост цены/времени затрачиваемых на развитие проекта в будущем. Учитывая, что большинству проектов развитие в принципе не грозит, а особенно учитывая, что заказчик зачастую сам это оговаривает в ТЗ прямым текстом, большинство программистов можно сравнить с собаками павлова, которые делают то, чему научены, при виде монитора и клавиатуры. Неуважение к бизнесу очень распространено в среде разработчиков, а в среде преподавателей и авторов книг, думаю, еще более.
avatar
Cristopher Robin, но и бизнес программистов за людей не считает. Например, как вообще можно называть опору своего дела «дятлами»? Тот кто это придумал… сам дятел. )
Просто абстрактно изучать язык — тупиковый путь.
Нужно параллельно браться и программировать, реашая конкретную задачу. Тогда изучение тех моментов, которые нужны при написании программы,  будет активным и будет усваиваться. Изучать весь язык и все его возможности на авось пригодится может и хорошо, но…
Николай Скриган, Тимофей параллельно пытается программировать примеры. Но там они крайне не удачные. Западные, не для российского интеллекта, что влечет полное отсутствие желания их делать.
avatar
Андрей К, примеры вааще пппц
Тимофей Мартынов, это для западного мышления. Для нас нужно что то поближе к реальности.
avatar
так в этом и смысл ООП:
наследование, инкапсуляция, полиформизм
avatar
VpnS, нихера не понял, но +
avatar
Hannes, ))))))))))))))))))))
avatar
VpnS, это я уже понял!!!))
Тимофей, уныние тяжкий грех.  Давай рубись.
Это ты пока еще только книжку читаешь. Начнешь программировать там отдельные засады.

Тут главное верить в себя. Считать себя крутым и могучим.

avatar
sergik99, это я уже понял))))
учиться программированию можно по разному. Я вот, например, прочитал книжку, нихрена не понял, но узнал о возможностях изучаемого языка. Потом сел и стал реализовывать простенькие задачки. Сначала очень тяжело( как переводить с китайского), потом через 4 месяца наступает качественный скачек. Начинаешь помаленьку что-то писать. Потом берешь не сложную реальную задачку. В принципе через год уже имеешь квалификацию «начинающего» и можешь делать почти все, но долго и мучительно. Через 5 лет начинаешь делать хорошие вещи.
avatar
FZF, год.....
Пять лет....



Оббоже
Тимофей Мартынов,  Требуется время для наработки навыков. Мышление программиста — это немного специфическое мышление. :)))
avatar
FZF, это я тоже уже давно осознал
на стадии общения с программистами)
я ни одной ни курю и ни грамма ни пью! :)

вообще не понятно зачем ты этим занимаешься, Тимофей, то что ты делаешь сейчас хорошо делать лет в 18-20, а лучше в 10 :) начинать учить программирование сейчас в твоём возрасте, ну только как хобби или для общего развития. проффесионалом ты не скоро станешь. конечно если очень захотеть можно через 10 лет вырасти в суперпрограммера и следующие 50 лет ещё фигачить )

в общем мне кажется это не твоя компетенция и ты мог бы своё время потратить куда более эффективно, но чёрт его знает.

без практики сложно если честно. всё равно будет шняга получаться. опыта набираешься быстрее всего от более опытных коллег когда работаешь над одним проектом.

я вот тем чем ты занимаешься занимался в возрасте 18 лет, и потом ещё лет 8 писал говнокод, пока хоть чему-то научился.
avatar
главное не потерять мотивацию… ни в Си, ни в куреве… Продаст кто пут на первую папиросу ТС?
avatar
Судя по видосу, у тебя нет понимания базовых понятий. Что такое объект, класс, метод, свойство, наследование, интерфейс и прочее.
Читай книжки и зубри понятия для начала.
avatar
serg, да вродь в голове то есть понимание этих понятий
Тимофей Мартынов, ну по видео этого не заметно.
Удивляешься, что у тебя не выводится значение свойства ScaryThingIHave, но при этом ты ни разу это свойство не вызваешь.
Свойства сами по себе обычно ничего не выводят. Чтобы вывести значение свойства, его значение надо сначала получить, а потом передать в метод, который выводит на экран или показывает MessageBox.
Наследование тоже сделано не пойми как. Наследование — это выделение частного из общего. Т.е. если класс Б отнаследован от А, то можно сказать «Б» это «А», например ScaryClown это Clown и FunnyClown это Clown или «автомобиль» это «средство передвижения», а у тебя ScaryClown отнаследован от FunnyClown, т.е. у тебя ScaryClown это FunnyClown. Что не есть правильно.

И книжка твоя — говно.
Читай лучше C# in a nutshell (на англ vk.com/doc24300989_341954531?hash=58b24356316717c32d&dl=4dfb2713d0d3cd452d) на русском не знаю есть ли электронный вариант, бумажный вот www.ozon.ru/context/detail/id/19146325/
avatar
serg, я вижу что я не вызываю свойство ScaryThingIHave
Просто по логике примера из книги к нему должно быть какое-то обращение и я этого обращения не нашел

Книжка вероятно в натуре говно
Но дочитать её я должен
serg, ты не находишь что по справочнику сложно изучать язык?:)
Тимофей Мартынов, это конечно справочник, но, имхо, для изучения языка он подходит.
Плюс справочника (не любого, а именно этого) в том, что он излагает информацию последовательно, не кидаясь сразу в ООП, как это делает стиллмен.
Минус справочника в том, что он может не объяснять разные базовые моменты программирования. Но эти моменты не привязаны к языку, их можно изучать отдельно. Вот например плейлист с объяснением основ ООП (примеры там приводятся на жаве, но это не важно; да и жава похожа на C#)
www.youtube.com/playlist?list=PL6LDsbZOeyrx462VmH18qS0a9Dw9LwpSu
avatar
Тимофей Мартынов, вот еще хороший вариант (не справочник)
adm-lib.ru/programmirovanie/h.-deytel-c-v-podlinnike.-naibolee-polnoe-rukovodstvo.html
avatar
Ну я учился на программиста, типа детская мечта и все такое… учить синтаксис — это то, на чем погорели толпы горе-программистов вроде меня и тебя. Я как-то раз, уже далеко после окончания ВУЗа взял, и по памяти расставил ключевые моменты объектно-ориентированное программирования у себя в голове, которые там должны были выстроены и опробованы еще до поступления в ВУЗ. Что-то вроде просветления за счет того, что повзрослел. Конечно, некоторые моменты были упущены, т.к. я усвоил не весь материал.

Кстати, быть программистом это обалдеть какая скукота.
avatar
izya kacman, «Кстати, быть программистом это обалдеть какая скукота» — в период с 19 до 35 лет было очень даже интересно, только потом стало скучно. Но только потому, что не было интересных задач, все однотипное. Сейчас интерес вернулся, т.к. нашел применение знаний к новой области — к трейдингу.
тимофей, интересно сколько вам надо книг прочитать чтобы понять.

«что истина в простом.»

забьете себе мозг ерундой, а там и до палаты №6 не далеко
avatar
Тимофей Мартынов! Есть два хороших самоучителя по С#, написанных отечественными специалистами.
1. http://eknigi.org/programmirovanie/69771-samouchitel-c.html
2. http://forcoder.ru/c-sharp/samouchitel-c-nachala-programmirovaniya-1257
Отчаиваться не стоит, ибо вспомните школу как шло обучение тому или иному предмету у того или иного ученика.
Кто-то вначале был в отчаянии, но продолжал грызть гранит науки(чаще всего под давлением родителей), кто-то не так сильно был «обременен» родительским вниманием. Результаты к окончанию обучения всегда были разными у этих двух групп.
У вас похожий случай. Поэтому не сдавайтесь, но может нужно переключаться с обучения чаще и попробуйте два самоучителя, приведенных выше. Думаю с ними обучение пойдет веселее. 
Удачи!
avatar
(0) Целью любой работы должен быть конечный результат. Что вы хотите получить на выходе? Я когда начинал учить 1с хотел много денег, но при этом у меня уже был 25 летний опыт работы программистом на других языках, итак я написал конкретную программку учета путевых листов на предприятии, в конторе, куда пришел 1сить переписал ее на язык 1с. с этого все и пошло.
avatar
Потом был переход с 77 на 81, потом с 81 на 82 потом с 82 на УФ 8.3  . Начинаешь тупо переносить какой-нибудь документ из 7.7 в 8.2, за это платят от 2 до 3 тыров рублей, далее пишешь макеты — это тоже несложно, потом пишешь работу с вордом, с экселем — всем нужно выводить  в шаблоны договоров информацию или скачивать цифирь с эксель таблиц и обрабатывать — вот и ниша…
avatar
Magistr, Хороший пример четкой, практической задачи.
avatar
Тимофей, вы сильно грузите мозг теорией, а программирование не математика. если что то не понимаете переводите на простой пример. По интерфейсам это же просто, берем пример из жизни: порт USB, если у вас есть устройство с этим портом то вы можете, заряжать устройства и передавать данные. так и с классами, если какой то класс наследник интерфейса, значит этот класс реализовывает эти функции и свойства.
начинающему это вообще не нужны, если грубо то всё эти «надстройки» нужны только в больших проектах и используют для экономии времени.
avatar
просто тебе не умеют или некому обьяснить
я бы легко и быстро обьяснил тебе всю эту хрень
avatar
Maaxee, держи плюс в профиль

где твой расчет гэпов по утрам?:)
Тимофей Мартынов, для расчёта гэпов по утрам мечтаю когда нибудь написать приложения под айфон. Но блин нет инвестора.
avatar
Maaxee, чот давно тебя не видел на смарте
Тимофей Мартынов, кашу бабос в игровой индустрии пока косится. Easy money.

avatar
Maaxee, ого а как?))
Тимофей Мартынов, на с++ программирую за денежку 
avatar
Maaxee, молодец!
Тимофей Мартынов, а ты вкурсе что занявший 4ое место по смартлабу(по процентам) на лчи мой младший брат?
avatar
Maaxee, неа)))
а нахрена это всё делается? Если цель стать программистом, то книжка как справочник в который лезешь когда мозг наработал практические навыки и готов воспринять инфу… программирование это ж не абстрактное знание, а куча всякой херни, придуманной для практических целей. Если нет практических задач, то зачем всё это нужно? Или нужно написать робота, но зачем для этого  что то больше, чем процедуры покупки, продажи  по условию < или > какого то уровня ))) Зачем для этого знать как программируют  космические спутники?

)))
avatar
Кстати о возрасте — полная чушь — я в 20 лет писал на коленке на ассемблере, а 1сить начал в 44 счас мне 54
avatar
Magistr, ну так Мартынычу не 20.
 1с — один асс — как говорят викинги
avatar
 да на самом деле сейчас все гуглят и на форумах смотрят — книжки это отстой.
avatar
В программировании нет ничего сложного, я в 7 лет начал. Читать научился и начал программировать :)
avatar
А я вначале научился писать всякие классные программки, а уже через год в институте узнал про типы, классы, ооп и прочую теорию, как там все это называется....)) Тимофей, отложи на месяц умную книжку, попробуй зайти с другой стороны, напиши какую-нибудь программулину при помощи справок из инета. Сразу в голове все устаканится.
«Программирование и я. Отчаяние»  ////Тимофей, перепрограммируйся!
avatar
57 часов — это, в общем, то, вообще ничего. Так, говна на вкус попробовать. Параллельно стоит прогать видео-уроки на ютубе, где в реал тайме русские авторы при тебе пишут прогу, давая понятные комментарии. 
avatar
Тимофей, посмотри на досуге хоть один урок этого курса:
youtu.be/x0udrpe_gZE?list=PLvItDmb0sZw-kmcZAZJ29eTtAV56D5dgW
Все понятно и легко, мозги не закипают, вопросы исчезают.
Александр Оцепируки, 

а я вот не понял про эти курсы — они же вроде платные? Надо платить за месяц, 3, 6, год — по желанию. А на ютубе там что — обрезанные версии? А если не обрезанные, то чего они на ютубе, а не в торрентах? Куда авторы смотрят? Не могла бы Вы пояснить?
avatar
tim, на ютубе они один-два урока из каждого курса выкладывают целиком бесплатно. Плюс выкладывают обрезанные уроки для того чтобы можно было составить представление о курсе. Потом уже нужно либо подписку покупать либо искать на торрентах.
tim, там начиная с 3 урока они обрезанные
Александр Оцепируки, я смотрел первые два, бесплатные которые))
Чем бы дитя не занималась- лишь бы не плакала)))))
Вот я стал по субботам стрелять по тарелочкам- и публика вся интеллектуальная  и очень богатая… Один я на электричке приезжаю из Москвы)((((
Каждый выстрел- батон нарезного+ каллорийка!
avatar
Не знаю насколько скучно быть пограммистом в 35, но я начал изучать C# (из-за любимого QPILE, у которого, как известно нет графической оболочки) лет в 37 или 38 и был удивлен насколько это интересно, не так уж и сложно, и практически полезно. Но времени, конечно требует кучу…
avatar
DmitryMX, C# действительно, оказался безумно интересным.  Я около 15 лет себя уговариваю вообще перейти на C. Но c# с фреймворком и концепцией «все делаем через классы и коллекции» меня покорил.
avatar
DmitryMX, кстати на qlua можно развитую графическую оболочку сделать. 
avatar
Мне кажется, что решать надо сразу свою конкретную задачу. Для абстрактного изучения программирование в полном его понимании потребуется не менее 3-5 лет. И половина из этого будет не нужна.
avatar
Я не совсем понимаю, зачем учиться на примерах из книги. Ведь программирование это прикладная вещь. На мой взгляд, легче всего изучить основы C# можно создавая коды торговых систем для Wealth-Lab и ТСЛаб. Так легко усваиваются и понятие класса и методы и свойства и прочие навороты. И уже получив практику (если на то есть необходиость) можно двигаться и дальше. Правда, если не хочешь стать профессиональным программером — непонятно зачем забивать голову избыточной информацией.
avatar
Дмитрий Власов, я не понимаю с какой стороны мне подойти c C# к тому же TSLab 

совершенно не понимаю
наследование, инкапсуляция, полиформизм — для первых роботов это не обязательно. Выж Тимофей не к собеседованию готовитесь, а извлекаете минимум вещей для очередного этапа практики.
avatar
Макс, я понимаю
но я читаю книгу и там я ввяз в этот материал)
Насчет конкретной задачи абсолютно согласен. Я делаю простые программки вполне себе полезные уже года три хотя до сих пор, к стыду своему, не знаю что такое инкапсуляция. Но как то так потихоньку живу с этим.
avatar
DmitryMX, а что за программки ты делаешь?
Тимофей Мартынов, насчет полезности знания простого программирования (и C#, как одного из самых популярных) для своих нужд, у меня сделано несколько простых программ типа вот такого таймера vk.com/photo309046862_402289946 (фотка для прикола такая, к делу не относится), также всякие напоминалки, будильники и т. п.
Ну а для трейдинга я уже обвешался программами по уши. Большинство из них героически борются со мной лично, когда я пытаюсь отключить ограничение по дневному лимиту. Борются с переменным успехом, но сейчас уже побеждают в большинстве случаев. Ну и конечно автостопы и другие помогалки, это, в основном на QPILE.
Кстати когда я начинал программировать, одна из первых программок, которую я сделал, это программный вариант твоей, Тимофей идеи с фишками, — в каком то интервью слышал: кладешь на стол фишку в случае отрицательной сделки (я предпочитаю это делать в случае любой неправильной сделки), три фишки — закрывай терминал. Вместо фишек кнопки и индикатор на видном месте, третья фишка блокирует лимит. Кому то может покажется глупым, а мне реально помогло. И сейчас такие «фишки» входят в мой комплекс.
avatar
Тимофей, придумай для себя маленькую реальную задачу, которую мог бы решать компьютер и попробуй её запрограммировать.
Багатенький Буратина, около 18 лет назад я себя так уговаривал начать учиться программировать. Пытался взять все с наскоку и решить реальную задачу. Но чтобы я не придумывал, все упиралось, что у меня не хватает знаний и интерес пропадает (а как школьнику, терпения не хватало).
Думаю программирование все таки познается через последовательное изучение материала. По кирпичикам.
avatar
Андрей К, 18 лет назад не было одной фигенно важной вещи — Интернета. Сейчас изучать программирование или, к примеру иностранный язык одно удовольствие и не требуется ни каких (ну в принципе) учителей. И, что важно, ни каких упоров в отсутствие знаний.
А если не ограничиваться одним Рунетом, то вообще нет пределов совершенству.
avatar
DmitryMX, это даааа. Хорошо подметили.
Зато был бейсик и паскаль =))
avatar
Андрей К, я так начинал изучать программирование. Ничего, выучился. Если Мартыныч будет просто мусолить книжки, то ему надоест и в конце-концов он это бросит.
Андрей К, аналогично и я. Тоже с наскоку не получилось
Багатенький Буратина, мне надо понять как мне подрубиться к интерфейсу smartCom, а этого мне пока мои знания не позволяют
Отчаяние это значит победа близка. Рост это боль.
avatar
Тимофей, решите типовую задачу. Вычислите программно, сколько счастливых билетов в пачке из 100 000 штук.
На таких задачках программисткая логика развивается.

Потом могу еще подкинуть.
avatar
Андрей К, крестики нолики можно написать... 
avatar
ves2010, тоже вариант. Причем с созданием класса =))
avatar
ves2010, на api тслаба не перешел? )
avatar
Chepell, неа лениво в багах копаться… я лучше 400 часов в фолаут4 поиграю… хоть удовольствие получу… в крайнем случае, если прижмет, закажу программистам болванку бота без логики… логику запрограммирую сам легко…
avatar
ves2010, вот и я такой же лентяй…
avatar
ves2010, фалаут 4???? ГДЕЕЕЕ????
Андрей К, ух
прикольно
Тимофей Мартынов, получается?
avatar
Плач гуманитария, соберись тряпка, читай дальше!:)
avatar
iuiu, ну а что делать, когда цена не подчиняется тех анализу? =) Рвать когти, недоумевать и продолжать учиться
avatar
iuiu, это вы совершенно верно подметили
сам себе противен
Действительно, зачем такие дебри? Чтобы начать писать роботов, можно взять Lua. Очень просто, логично и весьма быстро работает все.
avatar
Изучить C#  - это еще херня...
настоящая жопа начнется, когда попытаешься сделать что-нибудь надежно работающее… )
Бабёр-Енот, уверен в этом
но не все сразу

Интерфейс — это как вывеска банк. Типа в законе написано, что банки — это финансово кредитные учреждения, делают примерно то-то и то-то.

А вот конкретный банк — он типа наследует уже интерфейс, у него своя реализация его, иногда приводящая к краху системы и утечке памяти (бабок). Но по сути, он реализовывает интерфейс

avatar
Ух ты я оказывается по этой же книжке (м)учился))) это та, где всё на примерах с подрисовочками и картинками? в районе 250 стр. то же самое отчаяние. В итоге перешел на другую книжку, где всё не так игриво но более выверенно и структурированно, пока нового отчаяния не наступило)
avatar
Schmeichel, ахахахахах
блин прикол
я реально первый раз три года назад забросил её на 250-й стр.

ахаха
с новой книгой у тебя тоже отчаяение?
Тимофей Мартынов, с новой пока всё хорошо, я её сначала начал читать, но там примеры попроще и не обязательно их все кодить. Плюс сначала что-то уже можно диагонально читать. Но в целом структура такая, что постепенно всё встаёт на свои места. 
Рекомендацию кстати в твоей же ветке взял. Пол и Харви Дейтел «Как программировать на Visual C# 2012. „
avatar
Тима, для начала начни с вот этого: http://www.ozon.ru/context/detail/id/5531965/
Очень доступно обьясняетя.Правда на c++, но я думаю, что ты разберёшься.
avatar
Hannes, чот мне кажется это перебор
Желание писать роботов самому--это правильное желание, но не факт, что своевременное. Вначале надо понимать, что торгуется, зачем и почему. К примеру, для того, чтобы купить B&H, робот на C# не нужен. А вот чтоб котировальню сделать--вот тут и C# уже не всегда подойдет. 

Изучение же C#--я бы сказал так: должно быть умение управляться с заявками и сделками. Кидать заявки, следить за ними, то, се. И простейшая задача, на примере которой все нужное и выучится--это кинуть заявку на биржу и понять, что она исполнилась. Тут сразу выучатся и интерфейсы и обобщенные классы и еще много чего. Причем выучатся сами собой, в нужное время нужные вещи. А все подряд учить--непродуктивно. Базовые вещи, которые надо сразу отя бы немного понимать: переменные (public и private надо понимать), классы, методы. Еще бы желательно делегаты и события, но это и позже можно. И хватит, в дженерики сразу лезть не надо. 

Вот моя практика всего этого:
anatoly-utkin.livejournal.com/27105.html

anatoly-utkin.livejournal.com/27206.html

avatar
anatolyutkin, прежде чем я дойду до сделок, мне бы хотя бы освоить получение маркетдаты через интерфейс и обработку этой маркет даты
Тимофей Мартынов, Ну это тоже хорошая задачка. Для начала--выудить последнюю котировку. Чтоб в окошечке отображалась. У меня такая задачка являлась одной из базовых тренировочных в свое время. Все это делается, причем быстрее, чем кажется. 
avatar
Тимофей, интерфейсы — это, как бы, контракт который должен соблюдать класс наследующийся от него. Т.е. это просто объявление всего что должен уметь делать класс. Они абстрагиркют от конкретных экземпляров классов в коде.  
avatar
Мученик науки © (из песни)

Тимофей, пройди курсы АПИ русалго в исполнении Родиона (ra81) и будет тебе счастье — этого будет СВЕРХдостаточно для того, чтобы сделать хорошего робота почти по любой идее.
За то время, что ты принимаешь вселенские мучения, уже склепал бы 5-10 роботов прямо в процессе учёбы.

А потом, при желании, дорабатывал бы уже и до профессорского звания. )))
avatar
VladMih, нет в мире совершенства...
и гарантий что оно само влёт наклепается, и при этом будет еще и работать — тоже никаких. в прямом смысле слова — нельзя заранее проверить, как на реалье будет работь то что ты наклепал на API и отладил в тестере TSlab
Бабёр-Енот, зато то, чего НЕ «наклепал», точно работать не будет.

На то человеку и дана способность выбора — одни пробуют, ошибаются и снова пробуют, другие ждут когда им на голову упадет совершенство. Я желаю им (и вам) удачи.
avatar
Применим к неспособности овладеть языком программирования пять известных стадий ...

отрицание
гнев
торги
депрессия
принятие

)

 
avatar
Приблизительно представил о чём речь у топикстартера.
Как бы действовал я?
Надо попросить у кого-либо самого простого работающего робота с исходным кодом. Например, у anatolyutkin. Открыть его в среде разработки и разобрать каждый оператор. Что делает, у кого берёт данные, кому передаёт. Можно схему взаимодействия блоков нарисовать.
Или скачать из бесплатных у kb.robot. Если там код виден в нём.
Потом можно модернизировать, добавлять в код своё. Каждый раз проверяя, что работает после изменений.
avatar

теги блога Тимофей Мартынов

....все тэги



UPDONW
Новый дизайн