Мій тато нетерплячий до темпу мого навчання програмуванню. Що мені робити? [зачинено]


200

Тож мій тато близько місяця тому купив мені 5 книг з програмування (C ++, Java, PHP, Javascript, Android). Він архітектор, і він нічого не знає про програмування. Він купив мені їх, бо я сказав йому, що програмування - це весело, і я хотів його навчитися.

Як ви можете знати, бути дитиною (мені 14 років) і сказати, щоб вона навчалася програмуванню з нудних книг - не найпростіша річ. Я завжди відволікаюся .. Я говорив йому раніше, що мені не потрібно купувати книги, і я можу просто дивитися підручники в Інтернеті .. але ні, він такий старомодний. Він лише дозволяє мені користуватися книгами.

Нещодавно він почав запитувати мене, що я з цим зробив, і я показав йому програму C ++, яку я зробив, яка приймає те, що ви вводите, а потім присвоює значення кожній букві (A - перша буква в алфавіті, тому вона отримує значення з 1) .. тощо. Потім він додає всі значення і повідомляє вам це. Тож слово "додати" мало б значення 9.

^^ Це не дуже вразило його. Він кричав на мене і сказав мені, що все, що я роблю, - це викручування. Це не правда. Він надзвичайно традиційний і впертий і не слухає нічого, що я мав сказати. Що мені йому сказати?

PS: Якщо у вас є якісь поради щодо зонування книги, дайте мені знати

РЕДАКЦІЯ: Дякую вам всім, ви поняття не маєте, скільки означає знати, що є деякі люди, які розуміють мою ситуацію. Я прочитав кожного, і я буду враховувати думку кожного. ¡Грації!


15
Коментатори : коментарі призначені для пошуку роз'яснень, а не для розширеного обговорення. Якщо у вас є рішення, залиште відповідь. Якщо ваше рішення вже розміщено, будь ласка, підкажіть його. Якщо ви хочете обговорити це питання з іншими, скористайтеся чатом . Див . FAQ для отримання додаткової інформації.

7
До речі, ви повинні показати йому цю нитку. З ним може піти далі, якщо він побачить думку професійного програміста про ваш прогрес.
Колекціонер

15
@David Це не традиційно, це бути жахливим батьком і егоїстичною людиною. У цей момент він не хоче, щоб ви насправді досягли успіху, або він був у ямі з вами. Він справді просто хоче бути татом успішної дитини. На жаль, мало що можна зробити з цим, оскільки це твій батько, і ти не можеш бути неповажним. Що я б сказав, це гримаса і нести це, тоді, коли настане час недооцінювати, вибери лігу плюща далеко-далеко.
Lee Louviere

15
Я не здивований, що це було закрито (це поза темою), але це одне з тих питань, де я б хотів, щоб у нас був тег / прапор для "поза темою, але все одно тримай". :)
Циклопи

12
Запитайте у свого батька, що він
робив,

Відповіді:


197

Я показав йому програму C ++, яку я створив, яка приймає те, що ви вводите, а потім присвоює значення кожній букві (A - перша буква в алфавіті, тому вона отримує значення 1) .. і так далі. Потім він додає всі значення і повідомляє вам це. Тож слово "додати" мало б значення 9.

Я не знаю, що ти повинен робити з батьком. Але:

Якщо ви все це зробили самі, починаючи з нуля, вчившись з книжок, через місяць , це чорто вражає. І ви це робили на C ++, який є однією з найстрашніших мов програмування.

Там є досить багато людей, які беруть співбесіди, серйозно намагаються влаштуватися на програмування, хто б із цим боровся. Дивіться цю історію.

Я можу лише запропонувати: продовжуйте робити те, що вам подобається. Ігноруйте свого батька в цьому контексті; він не знає, про що йде мова. У вас є талант до програмування та бажання вчитися - основні компоненти, що стають чудовим програмістом.


8
Так, я вчився амбітно (саме ця програма дала мені близько 60 головних болів).
Девід

8
@David: З огляду на те, що він архітектор, зрозуміло, що він дбає про те, як виглядають речі . Але якщо він нічого не знає про програмування, то його не слід критикувати. Графіка, зовнішній вигляд програмного забезпечення - лише вершина айсберга .
Joonas Pulakaka

12
Серйозно? "Fatbooth" має кілька волохатих алгоритмів маніпулювання графікою, на які потрібно вивчити та опанувати роки. Якщо ваш батько хоче, щоб ви оволоділи розпізнаванням обличчя, то він мав би купити книгу про це. Це може виглядати просто (тому що це просто у використанні), але це важче досягти, ніж ви могли б подумати, даючи вам декілька 60 головних болів разом. Якщо припустити, що такі програми, як "Fatbooth", легко зробити, це серйозна (але таємна) образа програмістів.
Спойк

121
+1 для чортово вражаючих . Це, особливо враховуючи, звідки ви родом. Я думаю, ви могли б запитати у свого батька, у яких будівлях він навіть брав участь, набагато менше працював над собою, через місяць після того, як почав з нуля вивчати своє ремесло. Поставте речі в терміни, до яких він може стосуватися.
CVn

13
@Joonas: Не кажучи вже про те, що графічний дизайн, зручність використання та дизайн інтерфейсу - це справді всі дисципліни, які, як правило, мають дуже мало спільного з програмуванням .
Toby

88

Покажіть йому цю публікацію Пітер Норвіг. Норвіг - керівник науково-дослідних розробок Google і викладає в Стенфорді, зокрема «Штучний інтелект», він написав стандартну вступну книгу про AI. Як довго ви працюєте над цим? Я б не очікував нічого більше, ніж це після місяця роботи новачком без додаткових інструкцій, особливо з таким тернистим, як C ++. Все, що варто вчитися, варто добре вивчити.


83
  1. Пам'ятайте, що ваш тато, напевно, думає, що ви про найрозумнішу дитину в світі, і він намагається допомогти вам дізнатися про щось, що вам сказали, що вам подобається.

  2. Знайте, що хоч ваш тато безперечно помиляється (п’ять абсолютно різних тем - це багато кинути дитину відразу), він також має рацію. Дуже багато людей намагаються підібрати програмування, наслідуючи «підручники», які вони знаходять в Інтернеті. Це не завжди погано, але IMO, як правило, не призводить до твердого розуміння. Правильна книга спочатку навчить вас основ. Це може бути не так весело, як слідування навчальним посібникам, які щось швидко роблять, але ваш шанс на успіх у довгостроковій перспективі збільшиться, і кількість питань, які вам доведеться задати на stackoverflow.com, зменшиться.

  3. Забудьте про всі, крім однієї з книг, принаймні поки що. Це здається, що ви вже починали з C ++, тому продовжуйте це, якщо вам це подобається.

  4. Ви час від часу будете почувати себе зневіреними. Іноді відчувається, що половина програмування застряє, а інша половина відклеюється. Знімання - це цінний навик, і чим більше ви його практикуєте, тим краще вам буде. (Уникання в першу чергу - це також цінний навик, тому практикуйте це теж.)

  5. Вивчення своєї першої комп’ютерної мови - це розробка програмного забезпечення. Навчання малювати - це проектування будівлі. Це може бути не найцікавіша частина, але це необхідний навик.

  6. Якщо ви можете змусити його слухати, спробуйте розбити всі речі, які вам довелося навчитися писати свою маленьку програму. Навчитися користуватися інструментами потрібно трохи часу, і він точно не розуміє, як це все працює.

  7. Тепер, коли ви довели до простої запущеної програми, і ви, мабуть, засвоїли трохи C ++, які цікаві невеликі програми ви можете написати? Як щодо кредитного калькулятора, який приймає процентну ставку, суму позики та термін позики та роздруковує графік платежів? Або калькулятор, який читає молекулярну формулу типу "H2SO4" або "C6H12O6" і друкує вагу молекули? Це не надто складніше, ніж програма, про яку ви вже написали.


47
+1 "Забудь про все, окрім однієї з книг"
ПА.

9
+1 для чудових практичних ідей. Навчаючись, найважча частина часто придумує ідею для проекту, в той же час, коли вас занурюють у нову інформацію.
Морган Херлокер

5
+1 "Пам’ятай, що твій тато ..." Приємно, що там є точка зору батька, навіть якщо він пригнічує захоплення Девіда власним хвилюванням допомоги.
Джон Макінтайр

7
Створіть невеликий інструмент для вирішення проблем архітектури / калькування, залучивши свого тата!
Вайбхав Гарг

3
+1 за перший бал. Я думаю, що батькам дуже важливо думати про своїх дітей як про найрозумніших у світі. Зрештою, якби не таке ставлення, ОП не зробила б стільки за місяць, я впевнений. Однак, це може бути накладними, якщо воно дає стільки головного болю.
Антон Строгонов

53

Він купив мені їх, бо я сказав йому, що програмування - це весело, і я хотів його навчитися. ... Що мені йому сказати?

"Тато, ваш підхід до цього робить навчання програмуванням абсолютно не цікавим . Збийте це".


4
не найкраща порада. Папа не любить відповідати таким чином
CyprusUS

1
так, але якщо ОП просто сидить там і приймає його, тоді тато відчуває, що має рацію; його дитина не дуже працював. Малюк повинен поговорити в якийсь момент, щоб його тато зрозумів, як важко він працює.
Кевін

1
@CyprUS Щоправда, але я зараз наполягаю на слові робототехніка. Це було кохання мого життя рік тому. У мене в комплекті Lego Mindstorms був встановлений RobotC і все це. Полюбляв це, поки мій тато не отримав якихось «справжніх» передач і двигунів і не сказав мені зробити щось «справжнє», як робототехнічна рука. Зараз ненавиджу робототехніку із пристрастю.
chandsie

48

Як архітектор він, безумовно, повинен тягнути вашу ногу або бути грубим.

Пробуйте його, коли він починав: Запитайте його, чи намалював він хмарочоси з детальними планами сантехніки, розраховував сили та наголоси на матеріалах та чи зробив оцінку ризику катастрофи (наприклад, потрапивши в літак із зміями) після місяця, витраченого на книги, коли він був молодим, як ти. Можливо, це заспокоїть його.

Гаразд, можливо, це не найкраща порада, яку я можу дати вам, щоб поговорити з вашим батьком. Я можу зрозуміти, що мати тата, який карає на прогрес, а не заохочує, трохи оподатковує дитину, але сприймає це замість цього як заохочення робити краще. У нього можуть бути проблеми зі ставленням, але це не означає поганий намір.


44
Також порада вашому татові (правда, поза межами питання): Відкиньте ставлення Гордона Рамзі . Це працює тільки на Hell's Kitchen, оскільки претенденти - це досвідчені дорослі, які, як очікується, знають, як готувати та робити досконалість у його ресторані, а Гордон справді віддає кредит. Якщо ви робите це для початківців початківців або дітей, це лише відлякує їх від вивчення практики. Варто зазначити, що Рамсей приємніший у своїх інших телесеріалах, оскільки це не його власна справа.
Спойк

30

Мені буде цікаво, які книги ви використовуєте. Не всі вони насправді хороші. Також не кожна книга підходить для всіх.

Ви не вказали свій вік, тому я вважаю, що вам молодше 18 років. Я почав вчитися, коли мені було близько 8 років.

У дитинстві я скористався багатьма ресурсами, коли навчався програмувати. У мене були посібники, які були в комплекті з моїм TI 99 / 4A, в якому було багато цікавих програм для малювання зображень та анімаційних фігур. Мені Інтернет був недоступний, але були навіть комп’ютерні журнали, націлені на дітей, з програмами, на які я могла набрати та отримати негайний зворотній зв'язок, та статті про те, як вирішувати інші проблеми. Мені дуже сподобався роман про шпигунських романів, який дозволив мені вводити програми та налагоджувати програми, які були включені до складу історії. На жаль, я не думаю, що подібний ресурс все ще існує, але є кілька книг програмування, які орієнтовані на молодих людей, як-от книга Hello World про Python та Land of Lisp (хоча це теж цікаво для дорослих).

Я не знаю про вас, але був час, коли я дуже сильно почав писати програми, які роблять речі, дуже схожі на те, що ви щойно описали. Врешті-решт я перейшов до більш досконалих речей. Я написав кілька посередніх ігор, кілька демонстрацій, які відтворювали різні звуки та анімації у відповідь на натискання клавіш, та деякі навчальні посібники. Коли мені було близько 10 чи 11, я написав програму, яка допомогла мені запам'ятати періодичну таблицю елементів, не раз переглядаючи мене. (У той час мої навички запам'ятовування були кращими, ніж зараз, тому я вперше майже не набрав даних, ніж грав у вікторину, але справа в тому, щоб досягти успіху).

Ваш батько може цього не усвідомлювати, але книги - це лише частина процесу, коли ви навчаєтесь програмувати. Знайти невелику проблему та спробувати розібратися, як її вирішити - це друга половина рівняння. Пошук книги, яка навчає вас трохи за один раз і дозволяє вам щось забавно статися на машині - це друга половина. У моєму випадку книги, які наголошували на графіці та анімації, мене перемогли.

У дитинстві мені очі засклили, коли я читав книги про алгоритми сортування та складні структури даних, поки я не навчився достатньо, щоб побачити, як вони застосовуються до проблем, які насправді хвилювали. Не кожне слово в прочитаних вами книгах буде клепати. Це добре. Ви потрапите до цього матеріалу, коли вам це буде потрібно; якась проблема, яку ви хочете вирішити, нагадає вам про ту техніку, яку ви не вважали цікавою три тижні, три місяці чи три роки тому, і ви повернетесь назад, перегляньте її та зрозумійте.

Місяць - це не дуже довгий час, щоб вивчити програмування. Я писав код у тій чи іншій формі близько 30 років, в тому числі в дитинстві, і все ще щодня дізнаюся щось нове. Я майже впевнений, що в перший місяць у мене був перший комп’ютер, я багато часу проводив, граючи в Munch Man і набагато меншу кількість годин, намагаючись зрозуміти зразки програм у своєму довіднику. Вчіться темпом, який працює для вас. Зараз тиску немає, і це чудово.

"Викрутитися" - це те, що ви повинні робити, коли ви вперше навчитеся програмувати. Хакери (вид Пола Ґрема) розмовляють, намагаючись зрозуміти, як працює їх система, як працює їх мова програмування, як працюють їх інструменти. Ви щось намагаєтесь, не вдається, ви міркуєте через проблему, з якою ви стикаєтесь, і ви намагаєтесь щось інше, поки у вас щось не виходить. Не хвилюйтеся з цього приводу так сильно.

Якщо ваш батько не працює над одними і тими ж книгами, він, мабуть, не розуміє, скільки ви до цього часу дізналися. Я не очікував, що зможу спроектувати будинок чи хмарочос, прочитавши книгу про архітектуру протягом місяця, особливо підліткового віку.

Щоб зробити це перспективою, протягом останніх чотирьох тижнів я працював у деяких езотеричних куточках двигунів рамки Ruby on Rails. На сьогоднішній день мені нарешті є що показати для цього з точки зору користувача. Я навчився тону в той час і розробив багато критичного фундаментального коду, який працює досить добре, але це мій професійний еквівалент, що дозволяє користувачам вводити якісь речі і отримувати щось інше назад: не настільки вражаючий, на перший погляд, випадковий користувач , але в ньому пішла ціла велика робота. Якби хтось сказав мені, що я лунаю чотири тижні, я був би дуже розчарований, але я також знав би, що вони мають лише найменше розуміння того, що робило так, щоб зробити так просто.


2
+1 для різання зубів на TI 99 / 4A. Досить однакова історія для мене програмування була веселою, і почати робити це було набагато доступніше (або, можливо, це просто здалося таким). Моя донька (10 років) виявляє інтерес до навчання програмуванню, і мені найскладніше думати про веселий, але ітеративний спосіб розпочати її. ОП від нульових знань до 1 місяця і виконувати те, що ви сказали, звучить прямо на ПАР.
Омін

Омінус (і Давид), подивіться на Processing, і цю книгу від Manning: manning.com/pearson
JasonTrue

4
+1 не для всіх книг добре. На мій досвід, більшість книг там орієнтовані на людей, які вже розуміють програмування. Небагато направлених на новачків, але я б рекомендував цього та / або цього .
Девід

@David дякую за посилання. Сьогодні вранці замовив книгу для дочки.
Омін

@Jason: Він згадав, що був дитиною у віці 14 років.
CyprusUS

19

Схоже, що в цій ситуації твій тато не є тим, хто дає тобі позитивне підкріплення та підтримку в тому, що ти робиш. Просте рішення: не використовуйте його для цього.

Робіть власні проекти та робіть їх тому, що вони веселі, а не тому, що він (або хтось інший) хоче, щоб ви їх робили. Виберіть щось, що вам цікаво Вам не потрібно вивчати всю мову / технології з книги. Натомість просто починайте займатися речами. Врешті-решт, як справи стають легкими, ви шукатимете нові концепції / виклики. І ви побачите, що хочете прочитати книги, які сьогодні вам здаються нудними (або принаймні певними розділами).

Якщо ви коли-небудь застрягаєте і вам потрібна допомога в кодуванні чого-небудь, stackexchange - це чудовий ресурс, як ви вже з’ясували.


16

Мені здається, що у вашого тата є схильність до нереальних очікувань, або, можливо, у вас є історія починати справи, а не слідувати через, або те й інше. Важливо усвідомити, що тут нічого важливого немає, але важливо лише те, що вам подобається, що ви робите, і вдосконалюєтесь.

У мене дуже важкий час із книгами, які мене не розважають, я завжди є. Я найкраще вчуся, спостерігаючи, як інші люди роблять речі, задаючи питання, коли я не розумію мети чогось, а потім борюся, поки не зрозумію. Боротьба робить нас сильнішими і дає нам право на власні досягнення, можливо, тому так важко вилізти з матки.

При цьому, одним з найгостріших інструментів у вашій панелі інструментів буде можливість залишатися відкритими, продуктивно працювати серед критики та не виключати порад на основі джерела. Хороші книги програмування, як правило, захоплюють вас, надихають вас і очікують, що ви повернетесь до них, коли вдаритеся об стіну. Без них ви будете робити багато дивовижних речей, не спочатку розуміючи, що саме ви робите. Програмування - це дуже обдумане мистецтво, тому я закликаю вас шукати книги, написані у легкому для засвоєння вигляді.

Я займаюся професійним програмуванням вже досить довгий час, і я можу вам сказати, що моє задоволення справді моє власне. Мій начальник не зовсім розуміє, чому речі, про які я написав, такі приголомшливі, моя дружина засинає, коли я розповідаю їй про свій день, і мої друзі виходять з дороги, щоб не питати мене про свою роботу. Я насолоджуюся своїми перемогами та випадковою можливістю поділитися ними з однолітками. Твій тато, в даному випадку, не з твоїх однолітків.

Продовжуйте і вдосконалюйтесь. Звикайте до того, що непрограмістам потрібно побачити щось візуально вражаюче, перш ніж справити враження. Чому б не спробувати свою удачу, написавши щось на кшталт генератора набору Mandelbrot / Julia ? Це може показати йому такий прогрес, який він шукає, відволікаючи його на деякий час. Через десять років ви зробите щось дуже схоже, щоб відмовитись від технічного керівника зі спини, щоб ви могли реально виконати роботу.

Просто пам’ятайте, ви це робите, тому що вам подобається.


1
Послухайте цього чоловіка, він знає, про що він говорить;)
drxzcl

2
Хе-хе, мені подобається те, що непрограмістам потрібно побачити щось візуально вражаюче, перш ніж бути враженим " Написання фрактального генератора було одним із моїх перших проектів у школі інформатики. І я був вражений самим :)
Гійом

Мабуть, найкраща відповідь у всій цій темі ...
Венкі

15

Важко сказати, найкраще це питання для форуму батьківства чи форуму програмування. Я побоююся, що моя порада не буде цільовою, тому що я відчуваю, що заплутавшись у цьому питанні, це потенційно багато "питань" стосунків батько-син.

Якщо говорити, то, на чому я хотів би зосередитись, - це велика можливість, яка існує для вас і вашого батька, щоб зв’язати якусь тему, з якою ви двоє можете поділитися пристрастю. Будучи самим батьком і знаючи свого власного батька, я знаю, наскільки відчайдушно ми хочемо, щоб наші діти слухали нас, виконували наші вказівки та вчились у нас. Наших дітей часто змушують робити навпаки. Тож те, що ви двоє поділяєте цей спільний інтерес, - чудове.

Батьки можуть бути впертими напевно, але я все ж думаю, що ви маєте можливість розширити власну індивідуальність та вибір завдяки цій вправі. Не з почуття протиріччя, але випливає із власного потягу та амбіцій добре знати предмет програмування. Особисто це здається, що ваш батько кинув вас у глибокий кінець, коли мова йде про програмування. Зрозуміло, це може бути не мовою збірки MIPS чи LISP, але все-таки C ++? Java? Yikes. Я люблю програмування, але читання тих, хто на ранній стадії, могло б відключити мене разом. Жартує. :)

Тож, про що я б запитав, це таке: що вас надихає ? Які речі ви хочете будувати? Відповідь на це, а потім шукати власні книги та навчальні посібники з цього питання. Приходьте сюди і задайте питання. Будуйте щось. Потім покажіть татові, що ви побудували. Скажіть йому, що ви дізналися. Дякуйте йому за те, що він так співпрацював з вами і скажіть йому, що ви його цінуєте. Я говорю це тому, що врешті-решт, саме про це і йдеться. Він хоче чимсь поділитися з вами, тому що любить вас. Іноді батькам важко виразити це традиційними способами, тому ми шукаємо ці непрямі способи сказати те саме. Іноді ми смокче навіть робити це. Але не забувайте, що у всьому цьому є бажання бути ближче до вас.


15

Здається, ніхто ще не запропонував цього:

Нещодавно він почав запитувати мене, що я з цим зробив, і я показав йому програму C ++, яку я зробив, яка приймає те, що ви вводите, а потім присвоює значення кожній букві (A - перша буква в алфавіті, тому вона отримує значення з 1) .. тощо. Потім він додає всі значення і повідомляє вам це. Тож слово "додати" мало б значення 9.

^^ Це не дуже вразило його. Він кричав на мене і сказав мені, що все, що я роблю, - це викручування. Це не правда. Він надзвичайно традиційний і впертий і не слухає нічого, що я мав сказати. Що мені йому сказати?

Якщо ви задумаєтесь, ця програма не дуже вражає тих, хто користується комп’ютерами і нічого не знає про програмування.

Покажіть татові, як ви це зробили. Пройдіть його через вихідний код. Він, напевно, не зрозуміє цього, але він передасть, скільки роботи ви вклали в нього і скільки ви розумієте, і, можливо, він піде з більш позитивним враженням того, скільки ви насправді виконали.


3
Це заслужений спосіб більшого визнання, ніж отримав. Гарне неконфліктне рішення, яке могло б змусити тата зрозуміти хобі своїх синів трохи більше.
Фергюс у Лондоні

@FergusMorrow Згоден. Ця відповідь отримала занадто мало відгуків.
stommestack

12

Робити все, що ви хочете

Це ваше життя. Ви можете робити все, що завгодно. Не дозволяйте нікому (навіть вашому татові) контролювати ваше життя.

Я припускаю, що вам подобається програмувати більш-менш і хочете стати успішним фахівцем (а ваш тато хоче, всі хочуть). Але справа в тому, що ти ніколи не станеш успішним, якщо не будеш знати, що ти робиш, і якщо тобі це не подобається .

Освоїти будь-яку сферу важко. Ви не можете робити це лише під чиїмось впливом. І ніхто не знає, що ти повинен робити краще, ніж ти . Ви хочете сьогодні відпочити і відчути, як граєте в ігри цілий день? Це ваше рішення, і ви відповідаєте за це. Вам слід навчитися нести відповідальність за свої рішення та своє життя. Відповідальність за свої рішення є обов'язковою для кожного успішного фахівця.

То що ви робите в цій ситуації? Станьте своєю землею, нікого не слухайте і не робіть того, що вам здається корисним.


3
ОП є юридичним неповнолітнім (14, мабуть). Очікується, що його батьки контролюватимуть його життя, і сліпо протистоять наступні чотири роки, швидше за все, просто зроблять усіх нещасними.
jwodder

1
@jwodder: Якщо ці батьки відчувають, що їм потрібно контролювати те, що вчиться їх хлопчик у вільний час , то, можливо, це найкраще, що він починає боротися якнайшвидше. У мене теж є діти, однакові так само, як і Давид. Якщо моя дитина не могла сказати мені, що я помилялася, коли вона подумала, що я є, я б побоювалася за її майбутнє. 14-річний не 7 років, він знає щось про світ і дві речі, і знає кілька речей, яких його батьки не роблять. І якщо він виявився не таким, як вони хотіли, вони зазнали невдач усі роки тому і більше не мають шансів наздогнати, щонайменше, продовжуючи робити те, що робили протягом 14 років.
sbi

10

Ви запитували книги. Чесно кажучи, ви краще вирішите проблеми, ніж читати книги. Знайдіть головоломку або проблему, яка вас захоплює. Проект Euler - чудове джерело, і CodeGolf може запропонувати цікаві запитання при нагоді. Мій перший проект програмування - додаток C ++, який знайшов прості номери. Підручник, який я використовував у той час, пропонував просту реалізацію, як це:

bool isPrime(int x){
    int c = 1;
    while(c < x){
        if(x%c == 0){
            return False;
        }
        c=c+1
        /*c+=1 if compiler is set to '98 or more recent*/
    }
    return True;
}

що масово неефективно. Я дізнався про перші 500 праймерів з цією функцією, перш ніж відступати з огидою при її повільності. Ми з татом чудово пробували оптимізувати вище, і хоча це був простий додаток, який навіть не записав свій вихід у файл, мені було весело, і отриманий продукт був класним.

Ви дізнаєтесь, читаючи книги? так, але я не можу підкреслити цінність просто спілкуватися з мовою програмування та навчатись методом спроб та помилок.

Якщо ви вивчаєте програмування для свого тата, зупиніться і знайдіть свою власну причину, зробіть це. Шахта все ще тримає мене, щоб створити йому високооб'ємну автоматизовану торгову систему. Я смертельно серйозно кажу, що вам потрібно знайти те, над чим ви хочете попрацювати, тому що в іншому випадку ви, ймовірно, взагалі відмовитесь від програмування, тому що будете сприймати це як справа, а не хобі чи спорт.

Спробуйте прочитати книгу Лінуса Торвальдса "Тільки для розваги", в якій він переказує витоки операційної системи Linux. У заголовку все сказано.

Серйозно. Просто перейдіть на якусь проблему. Коли застрягли, залучіть старого.

Якщо ваш тато не оцінює вашу роботу, це не тому, що він розчарований. Він архітектор, він не знає, наскільки складні деякі речі. Спробуйте пройти його через свій код, якщо тільки логіка, і змусьте його оцінити, про що йдеться в тій логіці, про яку ви дізналися, написавши її.


TL; DR


  1. Просто возитися з чимось. Вирішити проблему. Якщо ви не можете його вирішити, знайдіть чуже рішення і спробуйте його зрозуміти.
  2. Веселіться з №1
  3. Щоразу, коли ви щось дізнаєтесь або просунетесь, не забудьте сказати своєму старості.
  4. Темп себе. Кожен вчиться по-своєму і за власним курсом. Просто продовжуйте це, і з часом ви отримаєте навички робити все, що вам хочеться.

1
Насправді він конкретно заявляє, що не вимагав книг .... Решту цього я погоджуюсь
Павло

6

Спробуйте знайти книгу, яка спеціально є вступом до програмування для новачків. Можливо, щось на кшталт Hello World! Комп'ютерне програмування для дітей та інших початківців Уоррен Санде.

Ви також повинні побачити, що має ваша бібліотека. У більшості бібліотек повинно бути кілька книг для початківців.


5

На мою думку, у вас є дві проблеми:

  1. Ви хочете навчитися програмуванню і тримати його веселим (задоволення важливо, це полегшує все)
  2. У вас є клієнт, який насправді нічого не розуміє в програмуванні, але має уявлення, чого він хоче. (Ваш тато у вашому випадку)

ІМХО:

  1. Для вашої першої проблеми ви просто перейдете на подібні сайти і задаєте такі питання, як ви. Знайдіть такі ресурси, як ці https://softwareengineering.stackexchange.com/questions/62224/how-to-become-a-professional-programmer/62263#62263 . Придумайте щось, що ви хочете створити (гра, список завдань, система управління колекцією фільмів, наступна найкраща соціальна платформа) і просто почніть кодування. Або почніть з розгадування загадок Де я можу знайти головоломки та завдання програмування?

  2. Ваша друга проблема складніше, вам потрібно навчити тата (хоча він здається не дуже бажаючим). Коли ви дізнаєтесь, вам стане краще пояснити йому, що важко в програмуванні. Ви можете спробувати використати метафори, як-от пояснив її Що таке хороша метафора програмування? . Ще одна порада полягає в тому, що непрограмісти взагалі не отримують складних можливостей чудового алгоритму, але їх легко вражає приємними інтерфейсами. Залежно від обраної вами платформи ви можете легко створювати гарні інтерфейси, щоб справити враження на свого тата. Використовуйте, наприклад:

Сподіваюся, це допомагає.


+1 Мені подобається твій пост, але я не думаю, що тут хтось навіть запропонував цій дитині дізнатися, які очікування батька. Здається трохи передчасно виключати очікування батька, не знаючи, що вони є.
користувач179700

5

Я хотів би лише додати, що я був у дуже схожій позиції свого часу, мій тато не дуже розумів, що означає позитивне підкріплення. Але бачачи, як я був наполегливим і стійким до його іноді різкого несхвалення, я зумів утриматись. Десь через двадцять років стосунки з моїм батьком сильно змінилися, вони покращилися, але тонкі нюанси тоді ще існують.

Це просто важкий час у вашому житті, і найважливіше тут - вам весело робити це більше, ніж усе інше.


5

Що стосується мови програмування, я погоджуюся, що вам слід зосередитися лише на одній.

Насправді, я рекомендую ще одного, якого у вас ще немає: Python. Python - мова, яку досить легко вивчити, але також досить потужна. C ++, Java, PHP та Javascript - набагато складніші.

Є кілька книг від Меннінга, які навчають програмуванню за допомогою Python. Я б наголошував на "Привіт, світ!", Навіть якщо він спрямований на дещо молодший демографічний показник.

Якщо ви хочете продовжити C ++, то рекомендую цю книгу:

Хоча це більше "довідник" і менше "підручник". Я не знаю гарного навчального посібника з C ++ - там є багато книг "навчіть себе C ++ швидко", але я не думаю, що вони дуже корисні. (C ++ - це досить складна мова, яку слід вивчити спочатку; більшість програмістів на C ++ починають на легшій мові).


Погодьтеся, python - кращий вибір як першої мови. C ++ - це чудово, але його дуже потужний і складний у використанні - такий, як навчитися літати на літаку, перш ніж навчитися ходити. За допомогою python ви можете використовувати бібліотеки відразу ж, і робити цікаві речі. Ваша функція string_add - це 5 рядків читаного коду. Напр., def string_add(a_string): \n\t sum = 0 \n\t for letter in a_string:\n\t\t sum += ord(letter) - ord('a')+1 \n\t return sum(\ N - новий рядок \ t -tab) або використовуючи більш вдосконалене функціональне програмування, це один вкладиш. string_add = lambda a_string: sum(map(lambda ch: ord(ch)-ord('a')+1, a_string))
dr jimbob

+1 На вивчення C ++ мені знадобилося близько року, тоді як вивчити Python мені знадобилося лише десять хвилин.
праворуч

+1 Я також рекомендую програму Head First Programming, в якій використовується Python.
Девід

4

Про C ++, Java, PHP, JavaScript та Android (щоб ви могли вибирати між ними, оскільки спроба оволодіти всім, можливо, не вдасться):

  • C ++: Це надзвичайно потужна мова. Але занадто потужний, занадто непростимий, занадто дурний для початку. Ви повинні зрозуміти багато речей, щоб розпочати свою роботу. Я думаю, це в поганому виборі мови для запуску занадто програми.
  • Java: популярний вибір для початківців. У певному сенсі це протилежність C ++: C ++ пропонує вам про будь-який уявний спосіб застрелити себе в ногу, тоді як Java намагається не допустити нічого, що може бути поза вашим контролем, що насправді є досить паралізуючим. Це трохи занадто спрощено, занадто банально, занадто обмежено, щоб показати вам багато програми. І ви не можете дуже багато зробити в Java, не знаючи багато стандартного API та декількох фреймворків. Ява як технологія може запропонувати багато, але має свої недоліки як мова.
  • PHP: Дуже популярна мова, головним чином через низький бар'єр для входу. PHP як мова визріла і тепер багата на можливості, які очікує від сучасної мови. Однак PHP переносить багато багажу з історичних причин. Тому, хоча це насправді дозволяє писати хороші програми, мало хто це робить, і ви не знайдете стільки інформації про те, як це зробити. А стандартна бібліотека - безлад. Якщо ви вирішите написати PHP, я радить почати працювати з рамками з самого початку, оскільки вони зазвичай сприяють надійному вирішенню загальних проблем. Особисто я рекомендую symfony , flow3 та CakePHP . Однак моя порада: не починайте з цього.
  • JavaScript: дивно потужна мова, як тільки ви її познайомитеся. У нього є кілька «причудків» , але насправді ви повинні мати можливість з цим жити. Хоча спочатку використовується для додавання інтерактивності на HTML-сторінки, JavaScript тепер може використовуватися в ряді полів. Крім класичного використання, вона може бути використана для розробки додатків для настільних і мобільних платформ з як Appcelerator , PhoneGap і AIR і для створення серверів з допомогою Node.js .
    Існує багато бібліотек та рамок JavaScript. Я пропоную вам перевірити нокаут та jQuery , а також qooxdoo та ext.jsякщо ви шукаєте щось повноцінне. Також для розробки серверів слід перевірити express.js .
    Також я хотів би зазначити CoffeeScript - мову, яка компілюється в JavaScript, але має досить багато додаткових пригод.
  • Android: На відміну від інших чотирьох, це платформа. Платформи слід вибирати залежно від того, що ви хочете зробити. Якщо це розробка мобільних додатків для пристроїв Android, тоді займіться цим. Не впевнений, що найкраще почати з цього, але в кінцевому підсумку вам потрібно створити речі, які, на вашу думку, класні.

У будь-якому випадку, що дійсно важливо, це те, що вам це приємно. Що ти створюєш речі, ти вважаєш, що це круто. Це вирішує деякі ваші потреби або з ними цікаво грати. Програмування призначене для тих, хто йому подобається. Вам потрібен набір інструментів, який дозволяє створювати програми з кількома рядками коду. JavaScript / CoffeeScript може стати хорошою відправною точкою.
Особисто я хотів би вказати на Рубі. Це мене багато чого навчило програмуванню, і мені шкода, що я не знав про це, коли почав програмувати. В основному, це дві грізні книги (обидві доступні безкоштовно):

  • Чому гострий посібник - Особисто мені це було трохи надто відволікало (жарти, мультфільми тощо) у цій книзі для мене, але ви можете насолоджуватися саме цим.
  • Прагматичний Рубі - працював ідеально для мене. Він трохи сухий, але він просто має справу з найважливішим.

Поряд з цим я пропоную вам перевірити взуття . Це чудовий інструмент із приголомшливою інтегрованою допомогою, включаючи довідники, навчальні посібники та демонстраційні демонстрації. Ви будете запускати свої перші речі протягом декількох днів.

І, ймовірно, пізніше, я хотів би вказати вам на Haxe . Я думаю, що це чудова мова (моя мова на вибір), і є зовсім новий посібник для початківців , який був виданий зовсім недавно. Однак у HaXe немає інструментів, які дозволяють створювати додатки настільки ж просто, як і JavaScript та Ruby. Тому вам може здатися, що для початку вам нудно або навіть страшно, що перемагає цілі.


Я б точно запропонував йому порізати зуби на C / C ++. Я зробив те ж саме і виявив, що вивчити будь-яку мову напрочуд легко, тому що майже всі сучасні мови отримують щось із C / C ++.
CyprusUS

@CyprUS: Хоча я згоден, обидва варті того, щоб навчитися, я не думаю, що і це не є добрим вибором для того, щоб почати вчитися програмувати. Крім того, я не бачу, як LISP або сімейство Smalltalk отримали б щось істотне від обох.
back2dos

Я думаю, ми повинні дозволити хлопцеві вирішити, що він хоче зробити. Однак LISP / SmallTalk є надто езотеричним, щоб мати загальну корисність (на мою думку)
CyprusUS

@CyprUS: Я пропонував лише поради. Зрештою він повинен вибрати. Я не мав на увазі LISP або SmallTalk, але (частково) клас сучасних мов, що перекриваються, які вони створили, зокрема, Ruby, Squeak, Objective-C, Lua, Scala, Erlang, Clojure, JavaScript, F #, Nemerle, Scheme. Всі вони фактично використовуються, деякі навіть є найпопулярнішими мовами там .
back2dos

3

Це зовсім небагато, щоб спробувати очікувати за один місяць. Швидше вам слід спробувати зосередитись на вивченні однієї мови чи парадигми за один раз, інакше це може стати переважним. Отримати занадто багато забитого одразу - це також хороший спосіб вимкнутись. Ви можете навчитися краще, працюючи над конкретною програмою, яка вас цікавить. Якщо цікавлять вас телефони Android, вам, ймовірно, краще працювати з Java, а не C ++. Він, можливо, очікував, що типовий споживач із інтерфейсом інтерфейсу, як типовий клієнт, не розчарував би його розчарування :)

Деякі книги Head First можуть допомогти зробити навчання трохи менш сухим, якщо ви обмежені в дотриманні книг.


3

Я думаю, що вам слід покинути більш офіційні речі і поглянути на Scratch - http://scratch.mit.edu/ - це дозволяє вам легше обробляти більшість програм програмування, все ще вивчаючи вас. вам потрібні петлі тощо.

Це також дозволяє бездоганну багатопотоковість, що, мабуть, найскладніше зробити вручну, і що потрібно для отримання цікавих результатів у сучасному світі.

Не варто недооцінювати це, оскільки він використовує кольори та цеглу лего, як підхід до програмування. З цим можна багато зробити, не втрачаючи технічних деталей.


+1 - Scratch - приголомшливий і цікавий спосіб вчитися. Він фактично розроблений з урахуванням вікових категорій, але все ще залишається Turing завершеним. Також перегляньте BYOB (Створіть власні блоки) для об'єктно-орієнтованого розширення до Scratch.
Морган Херлокер

3

Запитайте свого тата, чи зможе він спроектувати багатоповерхівку у вашому віці. Ось що таке програмування. Навчатися потрібно час, тому що так багато треба навчитися. Це як їздити на велосипеді, тільки у вас є тисяча педалей, передач, ручок, ручок, і ви не можете вибрати і вибрати, яку з них використовувати в будь-який момент. Це вимагає практики.

Я не сумніваюся у вас. Ви вже мали справу з C ++ на початку своєї мети стати програмістом. Це мене вражає .

Повісьте там і удачі в кар'єрі програміста!


3

Я знаю, що відповідей уже багато. Але я не бачив такої поради: спробуйте дозволити батькові допомогти вам. Спробуйте вибрати щось волохате у книзі C ++, яке ви можете зрозуміти, і попросіть його допомогти.
Дайте йому книгу і дайте йому повзати на C ++. Я майже впевнений, що це змусить його зрозуміти, як важко кодувати.


3

Спробуйте перетворити цю ситуацію на своє благо. Просто прийміть, що того, що ви до цього добивались, недостатньо, і намагайтеся робити краще ... У вас буде досить важких часів, як ці, коли ви будете працювати над начальником, якщо ви не почнете над цим перероблятись і вдосконалюватися. .

Якби я працював удвічі важче, коли я був твоїм віком ...


3

Вклад вашого батька не сприяє вашому навчальному процесу. Так, існує декілька способів пройти навчання програмуванню, як згадували інші. Однак ви показали феноменальний прогрес у С ++ на мій погляд. Ваше додавання програми було б чимось, з чим я ледве впорався після першого семестру програмування Java.

Якщо ви хочете продовжити, потрібно вирішити дві речі:

1) Поводься з батьком.

Подивіться, у кожного тата є екстравагантні мрії для своїх дітей. Однак їхні очікування можуть бути дуже високими і врешті-решт приведуть до чогось, що навіть неможливо в деяких казках. Я рекомендую залучити когось із зовнішніх людей, щоб краще оцінити ваш прогрес і звести батька на землю. Ви можете спробувати поговорити з родиною / друзями, яких ви знаєте, з досвідом програмування або навіть люди в цій спільноті можуть надіслати йому електронну пошту від імені власного досвіду та знань. Це найважливіший крок усіх, тому що якщо ваш тато не охолоне, ви втратите інтерес усіх разом.

2) Знайдіть фокус.

Дізнатися все одразу не сприяє. Виберіть мову і дотримуйтесь її. Під час читання книги певною мовою. Слідуючи прикладам книги, дослівно не такий спосіб. Регургітація - це процес навчання для деяких, але не для всіх (особливо для мене). Важливо нападати на нього з тих самих кутів, які ви можете, і з тих кутів, які вас цікавлять. Програмування книг різних авторів на одній мові, але різні способи використання можуть викликати цікавість до того, як ви хочете використовувати мову та розуміння, щоб власне бажання програмування (робити ігри? Дизайнерські програми? Тестувати? ect, ect). Ви також можете відправитися в особисту пригоду для створення програми. З'ясуйте, що ви хочете робити незалежно від того, що ви знаєте на даний момент, а потім досліджуйте це, як програмуєте. З часом йдеш, Зрештою захочу спробувати інші мови програмування, пов'язані чи ні. Ви також можете зрозуміти, що не хочете програмувати всі разом.

Перш за все, пам’ятайте, що важливий не кінцевий результат, це подорож. Не забудьте розважитися!


3

Вам дали хороші відгуки та поради щодо програмних аспектів вашої ситуації. Але я хочу додати щось з іншого погляду ...

У мене таке враження, що ви відчуваєте якісь негативні думки щодо свого тата - він тиснув на вас і робив кілька коментарів, які викликали у вас трохи горя і занепокоєння - і це вивело задоволення від програмування. Це прикро, і я думаю, що більшість людей тут погодиться, що програмування - це весело - я займаюся програмою вже понад тридцять років, і все ще вважаю це веселим.

Але я думаю, що твій тато справді на твоїй стороні. Він зробив те, що вважав за потрібне, намагався допомогти, купив тобі книги, щоб добре почати. Але він помилився (і я кажу як тато, ми все інколи помиляємось!). Для нього книги - це, мабуть, там, де він розпочав свою архітектурну кар’єру (я припускаю, що це розпочалося до того, як Інтернет і www були загальнодоступними, якщо вони були). Отже, на його думку, книги - це те, з чого ви починаєте.

Отже, якщо припустити, що ваш тато на вашому боці (і я впевнений, що він є), проблема полягає в тому, що він просто не розуміє, наскільки це складно, коли ви вперше розпочинаєте програмування - тому покажіть йому всі відповіді, що він був розміщено тут - Я впевнений, що твій тато хороший хлопець, і він зрозуміє, і він тебе підтримає.

І удачі з програмуванням - схоже, ви починаєте чудово.


можливо, додавання "блуд" не буде занадто великим? Зробити таку програму буде важко для багатьох моїх друзів, можу запевнити вас
CyprusUS

@CyprUS - Я не коментував його конкретні здібності (хоча я впевнений, що вони добре). Це було справді стосуватися його тата.
Simon Knights

3

Одне, що не згадується в інших відповідях:

Як ви можете знати, бути дитиною (мені 14 років) і сказати, щоб вона навчалася програмуванню з нудних книг - не найпростіша річ. Я завжди відволікаюся .. Я говорив йому раніше, що мені не потрібно купувати книги, і я можу просто дивитися підручники в Інтернеті .. але ні, він такий старомодний. Він лише дозволяє мені користуватися книгами.

Вам, безумовно, потрібно працювати над цією частиною. Інтернет - найважливіший інструмент кожного програміста, і ви повинні з ним працювати.

По-перше, програмування стосується вирішення проблем. Якщо ви не знаєте, як зробити X на мові XYZ, ви гуглите його та шукаєте рішення. * Швидке пошук рішень я так само важливий для програміста, як і використання клавіатури.

По-друге, ще одним важливим навиком є використання документації . Книги, як правило, схожі на підручники - вони пропонують рекомендації, але вони не пропонують вам повних знань - і ось тут корисна документація. Наприклад: ви програмуєте на C ++, у вас є місяць досвіду. Рано чи пізно (я би сказала зовсім скоро) вам знадобиться використовувати стандартну бібліотеку ... чи, можливо, ви її вже використали? Якщо так, то це хороший знак, ваша книга, мабуть, не погана в цьому випадку. У будь-якому випадку - корисно буде знати, що вже є у стандартних бібліотеках C ++, а що ні. Для цього корисно тримати посилання, як-от http://cplusplus.com/, відкритими весь час під час програмування.


Інтернет має вирішальне значення для кодування, а ще важливіше для навчання кодування. Якщо ваш тато цього не розуміє і очікує, що ви навчитесь програмуванню лише з книг , тоді його підхід є контрпродуктивним і змушує вас прогресувати повільніше (і, можливо, отримати шкідливі звички).


2

Він не має уявлення про процес нахилу до програми. Ви можете прочитати всі ці книги і досі не в змозі написати нічого пристойного, тому що найдовше займає справжнє розуміння того, що ви можете зробити, і як до цього підійти.

Ви сказали своєму татові, що вам подобається програмування - не дозволяйте йому зіпсувати це за вас. І звичайно не намагайтеся вивчити 5 мов програмування, принаймні не зараз. Дотримуйтесь порівняно простого, як на Java, яке можна передати іншим, як тільки ви його освоїли.

Що стосується книг, то, до речі, це правильний спосіб зробити це, адже ви дізнаєтесь про мову правильно. Виконання навчальних посібників часто призводить до підбору шкідливих звичок тощо.

Удачі; і дайте йому знати, що ви робите це правильно, прогрес повільний, але ви так багато навчаєтесь, поки це робите.


2

Я думаю, що багато програмістів у віці 25-35 років і більше виросли, граючи в Nintendo та Sega. Добра частина їх / нас здійснила ментальний перехід того, чому грати в гру, коли ти можеш зробити своє. Це дуже корисна мотивація, яка може змусити вас бути кращим програмістом. Це початок. Пізніше в житті ви можете перейти від написання відеоігор (віртуальні проблеми) до ігор з більш високими ставками (проблеми з реальним світом). Як і цей рецепт для цього пацієнта, який не збирається негативно взаємодіяти з іншим призначеним препаратом, чи можуть ці вантажівки здійснити найбільшу кількість доставки з найменшою кількістю газу, щоб зменшити забруднення, або як я можу забезпечити придбання цього запасу? за ціною, яку я хочу, коли є 1000 інших покупців одночасно.


1

Архітектура сягає корінням у фізичний світ, про який ви дізналися з моменту свого народження. Для студента архітектурного університету гра з легосом була б марною тратою часу. Ваш тато припускає, що, оскільки ви знаєте математику, ви знайомі з основами, і ви повинні мати можливість почати виробляти речі. Ну це неправда. Він не знає перше, що стосується програмування, бо навіть не розуміє, що це не галузь математики .

Програмування - це новий світ. Найкращий спосіб стати адекватним у цьому - це навчитися саме так, як ви пізнали фізичний світ: зануріться та експериментуйте. Словом, грай. Настав час лего.

Для порівняння розглянемо космонавтів. У них теж є новий світ, до якого вони абсолютно не підготовлені. Вони повинні почати з основ, як, як рухатися по кімнаті.

В якості наступного кроку я б запропонував зробити гру, де комп'ютер вибирає випадкове число, і ви спробуєте його відгадати, і він підкаже, чи здогадуєтесь ви занадто високо або занадто низько.

Спробуйте також багато різних мов! Не всі одразу, але, можливо, за тиждень.

Коли ви набули певного досвіду, зробити повноцінну відеоігру - одна з найбільших проблем, яку ви можете взяти на себе як програміст-мандрівник. Відеоігри стосуються майже кожного куточка нашої дисципліни, а побудова одного - це чудовий спосіб наростити свої навички. Це також ідеальне місце для експериментів та навчання на вищому та вищому рівнях майстерності.


0

Приділяйте власний час вивченню мов програмування, чим більше ви практикуєте, тим більше ви будете займатися програмуванням, на цей раз ви створили дуже просту програму, яка є досить милою для початківця, але в міру прогресу переконайтесь, що ви впевнені, що створюєте хороша програма, якою фактично міг би користуватися твій тато, добре, якщо ти запитаєш мене, ось як я допомагав татові в його роботі.

Просто поговоріть з вашим татом і поясніть йому речі, і я впевнений, що він по-справжньому зрозуміє, і я впевнений, що одного дня ви будете відмінним розробником.


0

Я навчаюсь як інженер програмного забезпечення, і прогрес навчання програмуванню в моїй освіті був більше, ніж просто читання книг.

Перш за все, я б порекомендував вам вивчити мову C, оскільки мова простий, а багато інших мов (наприклад, C ++, aim-c) побудовані на C. То, як ми це зробили, було те, що нам довелося придбати мікрочіп ( в нашому випадку Atmel Mega16 з комплектом STK 500, що є просто дошкою з світлодіодами та кнопками на ній), а потім ми просто пограли з ним, запрограмували програми, щоб зробити це bip і bop. Це веселіше, ніж просто читати та писати привіт світові програми IMO.

Коли C стане для вас прогулянкою по парку, перейдіть до C ++ та об'єктно-орієнтованого програмування (OOP). OOP є ключовою концепцією для багатьох мов та способів мислити програмування, і тому необхідно, якщо ви серйозно ставитесь до свого програмування. Переконайтесь, що ви зрозуміли теорію OOP перед тим, як зануритися в неї - інакше це може бути важким процесом :-)

І останнє, але не менш важливе, я рекомендую вам вивчити різні типи даних, наприклад, стеки, черги, купи тощо, які дуже добре розуміти під час програмування та читання нових мов.

Успіхів мій друже!


Я б рекомендував щось, крім C ++, для вивчення OOP. Пітон - хороший. C ++ - це така складна мова, що намагатися засвоїти поняття ОО з нею дуже болісно; як тільки ви насправді дізналися їх, ви дізнаєтесь, що робити з багатьма його інакше непрозорими особливостями.
nmichaels
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.