Программист болуу - бул сиздин көндүмдөрүңүздү күндөн -күнгө өнүктүрүүчү кумулятивдүү процесс, ал эми программалоо кызыктуу жана пайдалуу (психикалык, руханий жана финансылык) болушу мүмкүн. Бул колдонмо программист болуунун сыйкырдуу жолун берүүнү убада кылбайт жана кадамдардын ирети ыйык эмес, бирок сиз заманбап программалоо талааларынын биринде кантип программист болуунун жалпы схемасын аласыз.
Кадамдар
Кадам 1. Төмөнкү дисциплиналардын биринде (же алардын бардыгында) киришүү курсун алыңыз:
- Логика
- Дискреттик математика
- Программалоо тили (функционалдык жана логикалык программалоодон кийин, ырааттуу/процедуралыктан баштап объектке багытталган ар кандай программалоо парадигмаларына катышыңыз. Баштоочулар үчүн Ruby/Python/Pascal жана жакшы түшүнүүдөн кийин C ++/C#/Javaга тереңирээк кирүү)
ЭКСПЕРТТИК КЕҢЕШ
Gene Linetsky, MS
Startup Founder & Engineering Director Gene Linetsky is a startup founder and software engineer in the San Francisco Bay Area. He has worked in the tech industry for over 30 years and is currently the Director of Engineering at Poynt, a technology company building smart Point-of-Sale terminals for businesses.
Джин Линецкий, MS
Стартаптын негиздөөчүсү жана инженердик директору
Сиз коддоо даражасын алышыңыз керек деп ойлобоңуз.
Программалоо тилинде сабак алуу пайдалуу болушу мүмкүн, бирок программалык инженер жана стартаптын негиздөөчүсү Джин Линецкий мындай дейт:"
Кадам 2. Таблицалар, көрүнүштөр/сурамдар жана процедуралар сыяктуу маалымат базасынын түшүнүктөрүн үйрөнүңүз
Бул үчүн сиз каалаган жөнөкөй маалымат базасын колдоно аласыз, мисалы:
- MS Access
- DB V
- Fox Pro
- Парадокс
- MySQL - бул жакшы маалымат базасы, анткени ал бекер, көбүнчө колдонулат жана маалымат базаларына көбүнчө SQL суроолору менен кирүүгө болот
Кадам 3. Кандай программист болууну чечиңиз
Программисттер жалпысынан төмөнкү категориялардын бирине кирет:
- Веб программист
-
Иш столунун программисти
- Операциондук системага (ОС) багытталган программист (бир операциялык системага же операциялык тутумдардын топтомуна байланган)
- Платформадан көз карандысыз программист
- Бөлүштүрүлгөн программист
- Китепкана/платформа/алкак/негизги программист
-
Системалык программист
- Ядро программисти
- Айдоочу программист
- Компилятор программист
- Программист окумуштуу
Кадам 4. Сиз тандаган программалоо талаасына байланыштуу технологияларды жана программалоо тилдерин үйрөнүңүз
Кийинки бөлүмдөр программалоонун ар кандай түрлөрү боюнча милдеттерди бөлүштүрөт.
Метод 1 6: Веб программалоо
Кадам 1. Веб программалоо эмнени билдирерин билиңиз
Веб тиркемелер - бул интернет архитектурасынын үстүндө иштөө үчүн иштелип чыккан программалык компоненттер. Бул тиркемелерге Firefox же Internet Explorer сыяктуу веб -браузер программасы аркылуу кирүүгө болот дегенди билдирет. Интернет архитектурасынын үстүнө курулганда интернетке активдүү туташуу талап кылынбайт. Бул веб -тиркемелер стандарттык веб -технологиялардын үстүнө курулганын билдирет:
- HTTP
- FTP
- POP3
- SMTP
- TCP
- IP протоколдору
- HTML
- XML
- Coldfusion
- ASP
- JSP
- PHP
- ASP. NET
Кадам 2. Адатта кандай көрүнөөрүн билүү үчүн көптөгөн түрдүү веб -сайттарды карап чыгыңыз
(Оң баскыч, андан кийин Булакты көрүү баскычын басыңыз же F12 баскычын басыңыз.) Веб -сайтка кирген веб -сайттардын санын эмес, түрүнүн/мазмунунун ар түрдүүлүгүн издеңиз. Жалпысынан алганда, сиз төмөнкү веб -сайттардын ар биринен жок дегенде бирөөсүнө барышыңыз керек болот:
- Юридикалык катышуу сайттары (коммерциялык корпорациялар, коммерциялык эмес корпоративдер/уюмдар, өкмөттүк уюмдар)
- Желе индекстөө системалары (издөө системалары, мета издөө сайттары, адистештирилген издөө системалары, каталогдор)
- Маалыматтарды казуучу сайттар
- Жеке сайттар
- Маалыматтык/энциклопедиялык барактар (викилер, маалымат баракчалары, техникалык мүнөздөмөлөр жана каталогдор, блогдор жана журналдар, жаңылыктар жана маалымат агенттиктеринин сайттары, сары баракчалар ж. Б.)
- Социалдык сайттар (социалдык порталдар, кыстарма сайттары, жазуу баракчалары)
- Биргелешкен сайттар (буга жогоруда айтылган башка категориялар кирет, мисалы викилер жана блогдор)
Кадам 3. Жок дегенде бир мээ чабуулунун техникасын/ыкмасын жана ошол ыкманы ишке ашыруу үчүн колдонулган программаны үйрөнүңүз
Мисалы: мээ чабуулунун схемалары жана MS Visio.
Кадам 4. Вебсайттын структурасы менен таанышыңыз
Бул веб-диаграммаларды, сайт карталарын жана навигациялык структураларды түзүүдө.
Кадам 5. Графикалык дизайн боюнча краш курсун алыңыз
Жок дегенде бир графикалык түзөтүү/манипуляциялоо программалык пакетин үйрөнүүгө аракет кылыңыз (милдеттүү эмес, бирок катуу сунушталат)
Кадам 6. Интернет инфраструктурасынын негиздерин үйрөнүңүз
Бул жөнүндө негизги түшүнүк алуу кирет:
- Негизги веб кызмат протоколдору (HTTP, FTP, SMTP жана POP3 же IMAP4)
- Веб -сервердин программалык камсыздоосу (көбүнчө сиз иштей турган платформа үчүн)
- Вебди кароо программасы.
- Электрондук почта сервери жана кардар программасы
7 -кадам. HTML жана CSS тилдерин үйрөнүңүз
Сиз ошондой эле HTMLди түзөтүү үчүн "Көргөн нерсеңиз - WYSIWYG" программалык пакетин алууну каалашыңыз мүмкүн.
Кадам 8. XSL жана XPath сыяктуу XML жана XML менен байланышкан технологияларды үйрөнүңүз (милдеттүү эмес, бирок сунушталат)
Кадам 9. HTML тегерегинде тааныш жана ыңгайлуу болгончо жөнөкөй статикалык вебсайттарды түзүңүз
Кадам 10. Кардар тараптын скрипт тилин үйрөнүңүз
Көпчүлүк колдонуучулар JavaScriptти үйрөнүшөт. Кээ бирлери VBScriptти үйрөнүшөт, бирок бул көпчүлүк браузерлерге туура келбейт.
Кадам 11. Сиз үйрөнгөн кардар тараптын скрипт тили менен таанышыңыз
Ошол тилди колдонуу менен потенциалга жетүүгө аракет кылыңыз. Кардар тараптын скрипт тили менен таанышкандан кийин гана кийинки кадамга өтүңүз.
Кадам 12. Жок дегенде бир сервердик программалоо тилин үйрөнүңүз
Эгерде сиз өзүңүздү бир сервердик программалык камсыздоо менен чектөөнү чечсеңиз, ошол программа колдогон программалоо тилдеринин бирин үйрөнүңүз. Болбосо, ар бир сервердик программада жок дегенде бир программалоо тилин үйрөнүңүз.
13 -кадам. Пилоттук долбоорду түзүү сиз сервердик программалоо тилин үйрөнүп бүткөндөн кийин өзүңүз үчүн.
Кадам 14. Өз веб -сайтыңызды алыңыз жана өз баракчаңыздын ичинде онлайнда эксперимент жасай баштаңыз
Метод 2 2: Desktop Application Programming
Кадам 1. Рабочий колдонмолорду программалоо менен эмне кылып жатканыңызды билиңиз
Көпчүлүк рабочий программисттер бизнес чечимдери үчүн код жазышат, андыктан ишканалар, алардын уюштуруучулук жана финансылык структурасы жөнүндө түшүнүк алуу чоң убакытты үнөмдөйт.
Кадам 2. Ар кандай компьютердик жабдуулардын архитектурасы жөнүндө билип алыңыз
Санариптик микросхемалардын дизайнынын киришүү деңгээлинин курсу жана компьютердик архитектуранын башка курсу пайдалуу; бирок, кээ бирөөлөр муну баштапкы чекит үчүн өнүккөн деп эсептешет, андыктан эки же үч окуу куралын окуу (мисалы тигил жана бул сыяктуу) жетиштүү болушу мүмкүн. Андан кийин, сиз биринчи жолу программалоо тилин үйрөнгөндөн кийин, бул кадамга кайра бара аласыз.
3-кадам. Кирүү деңгээлиндеги (балдардын) программалоо тилин үйрөнүңүз
"Улак" деп аталуудан улуу болгонуңуз үчүн мындай тилди үйрөнүүдөн тартынбаңыз. Бул программалоо тилдеринин мисалы Scratch болушу мүмкүн. Бул программалоо тилдери эң биринчи программалоо тилин үйрөнүүдөгү ооруну жеңилдетет. Бирок, бул кадам милдеттүү эмес. Ал ошондой эле мурунку кадамдын алдында жасалышы мүмкүн.
Кадам 4. Процессуалдык ишке киришүү, объектке багытталган, жана функционалдуу программалоо парадигмалары.
Кадам 5. Процедуралык программалоо тилдеринин биринде киришүү курсун өтүңүз
Кийинчерээк кайсы тилди тандап алсаңыз да, кандайдыр бир деңгээлде процедуралык программалоону талап кылат. Ошондой эле, процедуралык программалоо көпчүлүк программисттер тарабынан жалпы программалоо идеясын алуу үчүн баштапкы чекит катары колдонууга эң оңой деп айтылат.
Кадам 6. UML же ORM сыяктуу жок дегенде бир алдыңкы моделдөө ыкмасын үйрөнүңүз
Кадам 7. Кичине консолго же консолго окшош тиркемелерди жаза баштаңыз
Сиз программалоо тилдериндеги китептерде жалпы кичинекей көнүгүүлөрдү колдоно аласыз. Бул үчүн, сиз жазып жаткан программалоо тилинде программаларды жазуу үчүн куралды тандаңыз.
Кадам 8. Тандалган программалоо тили боюнча өркүндөтүлгөн курстан өтүңүз
Төмөнкү түшүнүктөрдү жакшы түшүнгөнүңүздү жана алдыга кетерден мурун аларды салыштырмалуу оңой колдоно ала турганыңызды текшериңиз:
- Программанын колдонуучуларына маалыматты киргизүү жана чыгаруу.
- Логикалык агым жана процедуралык тилдердеги программалардын аткарылышы.
- Өзгөрмөлөрдү жарыялоо, дайындоо жана салыштыруу.
- Бутактануу программалоо курулмалары if..then..else..se жана select/switch..case.
- Убакыт … кыл, кыл.. убакыт/чейин, кийинки үчүн сыяктуу конструкциялар.
- Процедураларды жана функцияларды түзүү жана чакыруу үчүн программалоо тилинин синтаксиси.
- Маалыматтардын түрлөрү жана аларды башкаруу.
- Колдонуучу аныктаган маалымат түрлөрү (жазуулар/структуралар/бирдиктер) жана аларды колдонуу.
- Эгерде сиздин тилиңиз ашыкча жүктөө функцияларын колдосо, аны түшүнүңүз.
- Сиз тандаган тилдин эс тутумуна жетүү ыкмалары (көрсөткүчтөр, кароо ж.
- Эгерде сиздин тилиңиз операторлордун ашыкча жүктөлүшүн колдосо, аны түшүнүңүз.
- Эгерде сиздин тилиңиз делегаттарды/функция көрсөткүчтөрүн колдосо, аны түшүнүңүз.
Кадам 9. Сиз үйрөнгөн алдыңкы ыкмаларды колдонуңуз
Кадам 10. Башка программалоо парадигмасында дагы жок дегенде дагы бир программалоо тилинде киришүү курсун алыңыз
Ар бир парадигманын бир программалоо тилин үйрөнүү сунушталат, бирок эң алдыңкы программисттер үйрөнүшөт, бирок, адатта, сиз бирден баштайсыз, бир аз убакыт бою өз билимиңизди колдонуп, аны практикада колдонуп, кийинчерээк башкасын үйрөнүңүз. -программалоодо жашоо тажрыйбасы. Төмөнкү тил аймактарынын бирин колдонуп көрүңүз:
- Логикалык программалоо парадигмасы.
- Функционалдык программалоо парадигмасы.
- Объектке багытталган парадигма.
Кадам 11. Буга чейин үйрөнгөн эки программалоо тилин салыштырып көрүңүз
Ар биринин күчтүү жана алсыз жактарын баалаңыз. Адатта, муну жасашат:
- Биринчи программалоо тилиндеги алгачкы ишиңиздин жөнөкөй үлгүлөрүн алып, экинчи программалоо тилин колдонуп кайра жазыңыз.
- Жаңы долбоор түзүп, аны эки тилде тең колдонууга аракет кылыңыз. Кээде, сиз тандаган долбоорго жана тилдерге жараша, сиз долбоорду тилдердин биринде ишке ашыра албай калышыңыз мүмкүн!
- Эки тилдеги окшош конструкциялардын жана ар бир тилге мүнөздүү өзгөчөлүктөрдүн ортосундагы алдамчылык баракчасын же кыскача таблицаны салыштыруу.
- Башка тилди колдонуу менен эки тилдин бирине гана окшош өзгөчөлүктөрдү тууроо жолдорун табууга аракет кылыңыз.
12 -кадам. Сиз үйрөнгөн тилдердин бирин колдонуп визуалдык программалоо түшүнүктөрүн үйрөнүңүз
Дээрлик бардык программалоо тилдеринде визуалдык программалоону колдогон версиялар/китепканалар жана башка консоль же консолго окшош программалоо бар. Бул төмөнкүлөр аркылуу ишке ашышы мүмкүн:
- Окуяга негизделген программалоого киришүү. Көпчүлүк визуалдык программалоо кандайдыр бир деңгээлде окуяларга жана окуяларды иштетүүгө таянат (сиз тандаган программалоо тилин колдонуп).
- Мүмкүн болушунча рабочий программаны колдонуп көрүңүз жана программалык камсыздоо эмне кылаарын түшүнүңүз. Көпчүлүк программалык камсыздоону иштеп чыгуучу компаниялар программалык камсыздоону сыноо үчүн колдоно ала турган өз продукцияларынын бета-тестирлөө версияларын сунушташат. Колдонуучунун интерфейсинин жетишкендиктерин жаңыртып туруңуз.
- Графикалык колдонуучу интерфейстери боюнча айрым макалаларды же окуу куралдарын окуңуз.
Кадам 13. Билимиңизди сиз иштеп чыккан чакан программалык долбоорлорго колдоно баштаңыз
Программалоо тажрыйбаңызды күнүмдүк жашооңузда туш болгон көйгөйлөргө колдонууга аракет кылыңыз. Мисалы, файлдардын аттарын массалык түрдө өзгөрткөн, тексттик файлдарды визуалдык түрдө салыштырган, каталогдогу файлдардын аталыштарын эстутумга/тексттик файлга көчүргөн программаларды жазуу жана ушул сыяктуу нерселер. Башында жөнөкөй болгула.
Step 14. Виртуалдык бүтүрүү долбоорун түзүңүз
Буга чейин үйрөнгөн визуалдык программалоо ыкмаларын колдонуп, муну аягына чейин бүтүрүңүз.
15 -кадам. Өркүндөтүлгөн курстардан өтүү, деталдарга кошумча көңүл буруу жана онлайн ресурстардан сиздин алкагыңыз үчүн көбүрөөк кеңештерди жана ыкмаларды үйрөнүү аркылуу мурда көргөн визуалдык алкак/китепкана/пакет жөнүндө түшүнүгүңүздү кеңейтиңиз
Кадам 16. Программалоо тилдериңиз үчүн визуалдык элементтердин башка пакеттерин/китепканаларын издеңиз жана аларды үйрөнүңүз
17 -кадам. Графика сабагынан өтүңүз (графикалык дизайн эмес)
Бул колдонуучу интерфейсинин жагымдуу элементтерин жазууну каалаган программисттер үчүн абдан пайдалуу болот.
Кадам 18. Оюн программисти болууну карап көрүңүз (милдеттүү эмес)
Оюн программалоо көпчүлүк бөлүктөрүндө рабочий программалоо катары каралат. Эгерде сиз оюн программисти болууну кааласаңыз, бул кадамдарды бүтүргөндөн кийин оюн программалоо жөнүндө көбүрөөк билишиңиз керек болот. Графика курсу оюн программисттери үчүн милдеттүү нерсе жана мурунку кадамдарда тандалган экинчи тил логика/функционалдык программалоо тили болушу керек (эң жакшы Prolog же Lisp).
Метод 3 6: Бөлүштүрүлгөн тиркемелерди программалоо
Кадам 1. Бөлүштүрүлгөн колдонмолорду программалоону чечүү
Бөлүштүрүлгөн колдонмолорду программалоо көптөр үчүн эң кыйын программалардын бири болуп эсептелет жана компьютердик жана коммуникациялык технологиялар боюнча ар түрдүү билимди талап кылат.
Кадам 2. Телефон системаларына жана алардын жабдыктарына ылдамдык менен киришүү
Бул кадам милдеттүү эмес. Бирок, бул тармак топологияларын түшүнүүдө абдан пайдалуу.
3 -кадам. Хаб, коммутатор жана роутер сыяктуу тармактык аппараттык архитектура жана түзүлүштөр менен таанышыңыз
Кадам 4. Тармак протоколдору жана негиздери боюнча курстан өтүңүз
Сиз бөлүштүрүлгөн тиркемелерди программалоону баштоодон мурун Open System Interconnection (OSI) моделин, Ethernet, IP, TCP, UDP жана HTTPди жакшы түшүнүшүңүз керек.
Кадам 5. XML тилин үйрөнүңүз жана аны менен таанышыңыз
Кадам 6. Кабык скрипт тилин үйрөнүүдөн баштаңыз
Windows негизделген программалоо үчүн, бул Windows Scripting Host менен иштеген ар кандай скрипт болмок. Linux негизделген программалоо үчүн Bash скрипттери жана Perl жетиштүү болот. Бул үчүн JavaScript эки платформада төмөнкү себептерден улам катуу сунушталат:
- Ал ар кандай операциялык тутумдагы дээрлик бардык скрипт хосту тарабынан колдоого алынат (Windows Scripting Host JavaScriptти демейки боюнча колдойт, Linuxтун көпчүлүк бөлүштүрүүлөрүндө JavaScript скрипт консолун колдоо пакети бар).
- Бул көптөгөн иштеп чыгуучулар тарабынан үйрөнүүгө оңой деп эсептелет.
- Бул экинчи программалоо тилин тандоо керек болгондо сизди башка программалоо тилдери менен тааныштырган ALGOL синтаксисине ээ (C, C ++, C#, Java жана J# баарында ALGOL синтаксиси бар).
- JavaScriptти үйрөнүү менен, сиз веб-баракчалардын кардардык сценарийи менен таанышасыз, бул бонустук терс таасир!
Кадам 7. Башында өзүңүз тандаган сценарий тилин колдонуп, процедуралык программалоону гана колдонуңуз
Кийинчерээк, сиз өзүңүздүн скрипт тилиңизге жана ал колдогон нерсеге жараша прогрессивдүү программалоо ыкмаларын жана парадигмаларды колдоно аласыз. Бардык скрипт тилдери кандайдыр бир деңгээлде процедуралык программалоо аспектилерине ээ.
Кадам 8. Машиналар ортосундагы байланышты аткаруучу скрипттерди жазуу үчүн үйрөнгөн скрипт тилин колдонуңуз
Бул үчүн эмне кылуу керек экенин билип алыңыз. Жөнөкөй байланыштар жетиштүү болот.
Кадам 9. Рабочий скрипт/программалоо тилине которууну жасаңыз
Жакшы, Python сыяктуу көп парадигмалуу тил. Ошол экинчи тилге жөнөкөй киришүүнү алыңыз. Java көптөгөн программалоочулар тарабынан көптөгөн себептерден улам тандоо тили деп эсептелет. Бирок, C# бул жаатта тездик менен күч алууда. Java жана C# төмөнкү себептерден улам артыкчылыктуу:
- Алар объектиге багытталган программалоо тилдери, алар чоң командалардагы программисттерди ишке ашыруунун чоо-жайынан коргойт, анткени экөө тең компоненттерди колдойт (белгилүү бир тапшырманы аткарган жана башка программаларда колдонулушу мүмкүн болгон алдын ала түзүлгөн код бирдиги).
- Алар кандайдыр бир деңгээлде окуяга негизделген программалоону, ошондой эле ООну жана процедуралык программалоону колдошот.
- Тилдин негизи табият тарабынан бөлүштүрүлөт (Java учурда).
- Ачык булак коду жана рамкада камтылган пакеттер катары тармак менен алектенген көптөгөн даяр пакеттердин болушу; бул программисттерге башкалардын эмгегине таянууну жеңилдетет.
Кадам 10. Тилдин негизги өзгөчөлүктөрүнө көбүрөөк көңүл буруңуз, айрыкча тармакты колдогондор
Колдонуучу интерфейсинин элементтерине, мисалы чыгаруу, терезенин дизайны жана техникасы жана колдонуучу интерфейсинин элементтерине азыраак көңүл буруңуз.
Кадам 11. Бөлүштүрүлгөн тиркемелердин дизайны жана архитектурасы боюнча курстан өтүңүз
Бул китептерди, онлайн сабактарын же академиялык курстарды колдонуу менен жасалышы мүмкүн. Бирок, бөлүштүрүлгөн тиркемелердин архитектурасын жана анын түшүнүктөрүн түшүнүү зарыл.
Кадам 12. Сиз тандаган программалоо тилин колдонуп, тейленүүчү компоненттерди жана кызматтарды куруу жөнүндө билип алыңыз
Кадам 13. Төмөндөгү технологиялардын бирин же бир нечесин үйрөнүңүз
Алардын баарына жок дегенде киришүү сунушталат. Көпчүлүк бөлүштүрүлгөн программисттер бир же эки программалоо тилинде токтобостон, ар бир операциялык системада жок дегенде бир программалоо тилин үйрөнүшөт. Себеби, эгер сиз колдонмоңуздун "таркатылышын" кааласаңыз, анда жок дегенде ар бир негизги операциялык тутум үчүн анын версиясын камсыз кылышыңыз керек.
- Брокердик архитектура (CORBA) Жалпы Объект Сурамы
- Жөнөкөй объектилерге кирүү протоколу (SOAP)
- Асинхрондук JavaScript жана XML (AJAX)
- Бөлүштүрүлгөн компоненттердин модели (DCOM)
- . NET Remoting
- XML веб кызматтары
Метод 4 6: Китепкана/Платформа/Чектөө/Негизги Программалоо
Кадам 1. Негизги программалоо деген эмне экенин билиңиз
Негизги программисттер - бул программалоо колдонмолорунан программалоо код бирдиктерине башка программисттер тарабынан колдонула турган котормочулар гана.
Кадам 2. Кайра колдонулуучу компоненттерди/пакеттерди курууну колдогон программалоо тилин үйрөнүңүз, эгер сиз буга чейин андай кыла элек болсоңуз
Кадам 3. UML жана ORM боюнча өркүндөтүлгөн курстан өтүңүз
Китепкана иштеп чыгуучулардын көбү алардын бирин же экөөнү тең колдонушат.
Кадам 4. Программалык инженерия курсун алыңыз
5-кадам. Жок дегенде модулдук, компонентке негизделген, объектке багытталган жана окуяга негизделген программалоо ыкмаларын жана түшүнүктөрүн үйрөнүңүз
Программалоо парадигмалары жана тилдери канчалык көп болсо, китепкана/пакет программисти катары ошончолук ийгиликтүү болосуз.
Кадам 6. Бул операциялык системалар колдогон ар кандай операциялык системалар жана программалоо алкактары жөнүндө көбүрөөк билиңиз
Кадам 7. Окуу аракеттериңизди платформадан көз карандысыз алкактарга, программалоо тилдерине жана технологияларына багыттаңыз
Кадам 8. Эгерде сиз буга чейин үйрөнгөн программалоо тилдери ANSIге ээ болсо/ISO/IEEE/W3C стандарттык версиялары, стандарттарды өздөштүрүү.
Мүмкүн болушунча стандарттык кодду колдонууга аракет кылыңыз.
9-кадам. Жөнөкөй, буга чейин түзүлгөн китепканаларды, айрыкча ачык булактарды туурап көрүңүз
Бул китепкана/пакет программисти болуунун алгачкы этабында пайдалуу. Бирдиктерди которуу жана илимий илимий эсептөөлөр пакеттери сыяктуу жөнөкөй пакеттерден баштаңыз. Эгерде сиз колледждин студенти болсоңуз, анда теңдемелерин жана илимий өзөгүн китепкана катары колдонууга аракет кылып, программалабаган курстарыңызды колдонуңуз.
10-кадам. Программалоо тармагыңыздагы ачык булак пакеттерди издеп көрүңүз
Алгач экилик файлдарды/аткарылуучу файлдарды жүктөп алыңыз. Аны колдонууга жана анын күчтүү жана алсыз жактарын табууга аракет кылыңыз. Муну кылгандан кийин, булакты жүктөп алып, анын кантип жасалганын билүүгө аракет кылыңыз. Ошол китепканаларды же алардын бөлүктөрүн кайра түзүүгө аракет кылыңыз. Башында, муну кодду көргөндөн кийин, кийинчерээк кодду көргөнгө чейин жасаңыз. Кийинки этаптарда ошол китепканаларды жакшыртууга аракет кылыңыз.
Кадам 11. Программисттерге компоненттерди бөлүштүрүү жана жайылтуу үчүн колдонулган ар кандай ыкмаларды үйрөнүңүз
- Адатта, китепкана/пакет программисттери сунушталган бардык көйгөйлөрдү рекурсивдүү жана/же кайталап ойлонууга жакын. Ар бир маселени кичинекей көйгөйлөрдүн жыйындысы (жөнөкөй тапшырмалар тизмеги) же көйгөйдүн масштабын кичирээк масштабга чейин кыскартуу жана ошол алкактарды бири -бирине топтоо сыяктуу кайталануучу процесс катары ойлонууга аракет кылыңыз.
- Китепкана/пакет программисттери жалпылоого жакын. Башкача айтканда, жөнөкөй конкреттүү проблема менен сунушталганда, алар көбүнчө жалпы маселени ойлошот жана кичирээк маселени автоматтык түрдө чече турган жалпы маселени чечүүгө аракет кылышат.
Метод 5 6: Системалык программалоо
Кадам 1. Системалык программалоо эмнени камтыйт, түшүнүңүз
Системалык программисттер программалоо илими менен алектенишпейт, аны конкреттүү ишке ашыруу. Өзүңүздү белгилүү бир платформага байлабаңыз.
Кадам 2. Desktop Applications Programmers үчүн алгачкы үч кадамды аткарыңыз
3 -кадам. Сызыктуу алгебра боюнча киришүү курсун алыңыз
Кадам 4. Эсептөө курсуна катышыңыз
Кадам 5. Логика жана/же Дискреттик Математика курсун алыңыз
Кадам 6. Ар кандай жылаңач операциялык системалар менен тааныштырыңыз
Муну төмөнкүчө жасаса болот:
- Операциялык системалар кантип орнотулгандыгы жөнүндө түшүнүк алуу.
- Бир компьютерге ар кандай операциялык тутумдарды орнотууну үйрөнүү (милдеттүү эмес, бирок сунушталат).
- Бир нече операциялык системаны орнотуу. Системаларга эч кандай жардам пакеттерин орнотпоңуз; Анын ордуна, операциялык системалар тарабынан берилген бош функцияларды колдонуңуз.
Кадам 7. Компьютердик жабдуулардын архитектурасы боюнча курстан өтүңүз (же альтернативдүү түрдө китептерди окуңуз)
Кадам 8. Ар кандай компьютердик аппараттык платформалар жөнүндө түшүнүктү иштеп чыгуу
Кадам 9. Тандалган аппараттык платформанын/операциялык системанын ассамблея тили менен таанышуу
Кийинчерээк башка платформаларды/системаларды курууну үйрөнөсүз.
Step 10. ANSI C жана C ++ тилдерин, процедуралык программалоо түшүнүктөрү менен бирге үйрөнүңүз
Кадам 11. Тандоо аянтчасында C/C ++ стандарттык китепканаларын түшүнүңүз жана практикаңыз
Стандарттык шаблондор китепканасына (STL) жана активдүү шаблондор китепканасына (ATL) өзгөчө көңүл буруңуз.
Кадам 12. Конкреттүү платформаңыздын C-даамын түшүнүү үчүн онлайн ресурстарды, китептерди жана курстарды издеңиз
13 -кадам. C жана C ++ менен өнүккөн кодду түзүңүз
Step 14. Көбүрөөк өнүккөн Ассамблеяны үйрөнүңүз
Кадам 15. Операциялык тутумдарды долбоорлоо боюнча курстан өтүңүз
Кадам 16. Тандооңуздун конкреттүү платформасынын документтерин таап, окуңуз
Эгер Unixке негизделген операциялык системаны тандасаңыз, бул оңой болот. Кийин иштей турган системаңызды жакшы түшүнүңүз.
17 -кадам. Алган билимиңизди практикада колдонуңуз
Алгач чакан тутумдук коммуналдык программаларды түзүңүз. Ал, адатта, пайдалуу:
- Сиздин системада мурунтан бар болгон кичинекей куралдарды кайра жаратууга аракет кылып жатат.
- Башка операциялык тутумдарда бар коммуналдык кызматтарды сиздикине өткөрүүгө аракет кылып жатат.
Кадам 18. Тилдерди эң пайдалуу тартипте үйрөнүңүз
Бул биринчи программалоо тили маанилүү болгон жалгыз жер. Алгач ANSI C үйрөнүңүз, C ++ эмес, C#эмес, Java жана D эмес. Андан кийин C ++ үйрөнүңүз.
-
Биринчи тилди С жана С тилдерине чектөө системалык программалоо программисттин төмөнкү түшүнүктөр менен тааныштыгын талап кылгандыктан болот:
- Булак кодунун реалдуу жана толук компиляциясы.
- Төмөн деңгээлдеги объекттерди чыгаруу файлдары.
- Экилик файлдарды байланыштыруу.
- Төмөн деңгээлдеги машина тилинде/кураштыруу программалоо. C тили кээ бирөөлөр тарабынан жамаатты үйрөнүүгө оңой деп айтылат. Ал ошондой эле каалаган учурда кодго ассамблея тилинин кодун киргизүүнү колдойт жана ал процедуралык гана (монтаж сыяктуу).
Метод 6 6: Программалоо илими
Кадам 1. Программист окумуштуунун эмне кыларын билиңиз
Программист окумуштуулар - бул абдан өнүккөн программисттер, алар тиркемелерди иштеп чыгуунун ордуна, шифрлөө, программалоо тилдери жана маалыматтарды казуу алгоритмдери сыяктуу эсептөө технологияларын иштеп чыгуунун үстүндө иштешет. Бул деңгээлге сейрек академиялык изилдөө жана берилүү болбосо жетишилет.
Кадам 2. Информатика боюнча төрт жылдык даражага барабар илимий билимдерди топтоо
Муну төмөнкү жолдор менен жасаса болот:
- Чыныгы илимий даражага ээ болуу (адатта ушундай болот).
- Заманбап университеттердин биринен мындай даражага ээ болуу үчүн курстардын контурларын алуу жана курстарды өз алдынча изилдөө же өзүнчө курстар катары алуу. Буга теориялык жактан жетишүүгө болот, бирок сунушталган жол биринчи.
Кадам 3. Адистик тармагын чечиңиз
Канчалык конкреттүү болсо, ошончолук жакшы. Бул сиздин каалоолоруңузга жараша болот. Бирок, бул жерде компьютердик программалоо илиминдеги негизги темалардын тизмеси келтирилген:
- Алгоритмдин дизайны (байланышта издөө, иргөө, шифрлөө, шифрди чечүү жана каталарды аныктоо кээ бир мисалдар)
- Программалоо тилдери/компилятордун дизайны/оптималдаштыруу
- Жасалма интеллект талаалары (үлгү таануу, сүйлөө таануу, табигый тилди иштетүү, нейрон тармактары)
- Робототехника
- Илимий программалоо
- Супер эсептөө
- Компьютердик дизайн/моделдөө (CAD/CAM)
- Виртуалдык чындык
- Компьютердик графика (Компьютердик графика, адатта, графикалык дизайн же колдонуучунун графикалык интерфейси дизайны менен туура эмес чаташтырылат. Компьютердик графика - бул компьютердик системаларда графиканы кантип көрсөтүү жана иштетүү керек экенин изилдөөчү тармак.)
Кадам 4. Жогорку илимий даражага ээ болууну карап көрүңүз
Сиз магистратурага же докторантурага ээ болгуңуз келиши мүмкүн.