Бағдарламашы қалай болу керек

Автор: John Stephens
Жасалған Күн: 1 Қаңтар 2021
Жаңарту Күні: 2 Шілде 2024
Anonim
Қалай Программист Боламын? Бағдарламашы Болу Жолдары
Вызшақ: Қалай Программист Боламын? Бағдарламашы Болу Жолдары

Мазмұны

Бағдарламашы болу - бұл уақыт өте келе сіздің дағдыларыңызды қалыптастыратын жинақталатын процесс және ол көңілді әрі пайдалы жұмысқа айналуы мүмкін (интеллектуалды, ақыл-ой және қаржылық). ). Бұл оқу құралы сізге оңай бағдарламашы болудың сиқырлы әдісін уәде етпейді, ал қадамдар тізбегі онша маңызды емес, бірақ сіз қалай бағдарламашы болуға болатынын білесіз. заманауи бағдарламалау өрістерінің бірінде бағдарламашыға айналады.

Қадамдар

  1. Төмендегі тақырыптардың біреуіне (немесе барлығына) кіріспе курсынан өтіңіз:
    • Логика
    • Дискретті математика
    • Бағдарламалау тілі (жаңадан бастаушы C ++ / Java / Python тілін үйрену керек)


    Джин Линецкий, MS

    Стартаптың негізін қалаушы және техникалық директор Джин Линецкий - Сан-Франциско шығанағында стартаптың негізін қалаушы және бағдарламалық жасақтама инженері. Ол жоғары технологиялық салада 30 жылдан астам жұмыс істеді және қазіргі кезде бизнесті сатуға арналған ақылды құрылғыларды шығаратын Poynt технологиялық компаниясының техникалық директоры.

    Джин Линецкий, MS
    Жаңадан бастаушы және техникалық директор

    Сізге кодтау дәрежесі қажет емес. Бағдарламалау тілдерін үйрену пайдалы болған кезде, бағдарламалық жасақтама инженері және стартаптың негізін қалаушы Джин Линский: «Дәреженің пайдалы немесе пайдалы еместігі дау тудырады. онда сіз бағдарламалауды шәкірт үдерісі ретінде қарастыра аласыз - қателіктерден сабақ аласыз ».


  2. Кестелер, көріністер / сұраулар және процедуралар сияқты мәліметтер қорының тұжырымдамалары туралы біліңіз. Мұны істеу үшін кез-келген қарапайым мәліметтер қорының пакетін пайдалануға болады, мысалы:
    • MS Access
    • DB V
    • Fox Pro
    • Парадокс
    • MySQL - бұл жақсы мәліметтер қоры, өйткені ол еркін, жиі пайдаланылады және мәліметтер базасына SQL сұраныстарымен жиі қол жетімді.

  3. Әзірлеушінің қандай түрі болғыңыз келетінін шешіңіз. Бағдарламашылар негізінен келесі санаттардың біріне жатады:
    • Веб-әзірлеуші
    • Бағдарламалық жасақтама жұмыс үстелі
      • Операциялық жүйеге бағытталған бағдарламашы (бір операциялық жүйемен немесе амалдық жүйелер жиынтығымен байланысты)
      • Платформадан тәуелсіз әзірлеуші
    • Қолданбалы бағдарламалаушы
    • Кітапханалар / платформа / кадр / негізгі бағдарламашы
    • Жүйелік бағдарламашы
      • Ядролық бағдарламашы
      • Драйвер бағдарламашысы
      • Бағдарламашының құрастырушысы
    • Бағдарламалаушы ғалым
  4. Сіз таңдаған бағдарламалау аймағына қатысты технологиялар мен бағдарламалау тілдерін зерттеңіз. Келесі бөлімдерде бағдарламалаудың әр түрлі түрлерінің міндеттері бөлінеді. жарнама

6-дан 1-әдіс: Веб-программалау

  1. Веб-бағдарламалауға не қажет екенін түсіну. Веб-қосымшалар - бұл интернеттің архитектурасының жоғарғы жағында жұмыс істеуге арналған бағдарламалық жасақтама. Бұл қосымшаларға Firefox немесе Internet Explorer сияқты шолғыш бағдарламалық жасақтамасы арқылы қол жеткізуді білдіреді. Бұл қосымшалар Интернеттегі архитектураның жоғарғы жағында орналасқан, яғни Интернетке нақты қосылуды қажет етпейді. Бұл дегеніміз, веб-қосымшалар стандартты веб-технологиялар негізінде құрастырылған:
    • HTTP
    • FTP
    • POP3
    • SMTP
    • TCP
    • IP хаттамалары
    • HTML
    • XML
    • Coldfusion
    • ASP
    • JSP
    • PHP
    • ASP.NET
  2. Әдетте олардың қандай болатынын көру үшін әр түрлі парақтарды қарап шығыңыз. (Тінтуірдің оң жағын басып, содан кейін View Source таңдау (бастапқы кодты қарау) немесе F12 пернесін басу арқылы). Сіз веб-парақтың санынан емес, түрінен / түрінен мазмұнды іздеуіңіз керек. Жалпы, сізге келесі веб-сайттардың әрқайсысы үшін кем дегенде бір параққа кіру керек:
    • Компания беттері (коммерциялық компаниялар, компаниялар / коммерциялық емес ұйымдар, үкіметтік ұйымдар)
    • Веб-индекстеу құралдары (іздеу жүйелері, мета іздеу сайттары, арнайы іздеу жүйелері, каталогтар)
    • Деректерді өндіруге арналған сайттар
    • Жеке парақтар
    • Құжаттама / энциклопедия сайттары (Wiki, мәліметтер кестесі, техникалық сипаттамалар және пайдаланушыға арналған анықтамалықтар, блогтар мен журналдар, жаңалықтар мен жаңалықтар сайттары, сары парақтар ...)
    • Әлеуметтік сайттар (әлеуметтік порталдар, бетбелгілер және онлайн жазбалар сайттары)
    • Ынтымақтастық сайттары (вики және блогтар сияқты барлық жоғары санаттарды қосқанда)
  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. Өз веб-сайтыңызды орнатыңыз және өзіңіздің интернеттегі тәжірибеңізді бастаңыз. жарнама

6-дан 2-әдіс: Ішкі бағдарламалау

  1. Бағдарламалық қамтамасыздандырудың үстел үстінде не істеу керектігін түсіну. Жұмыс үстеліндегі кодерлердің көпшілігі іскери шешімдерге арналған, сондықтан олардың бизнестерімен, олардың құрылымдық құрылымдарымен және қаржылық құрылымдарымен танысу көп уақытты үнемдейді.
  2. Компьютердің әр түрлі аппараттық құрылымдарын зерттеу. Цифрлық схеманы жобалаудың және компьютерлік архитектураның басқа курсы қызығушылық тудырады. Алайда, кейбіреулер оны жаңадан бастаушыларға үйрену өте қиын деп ойлайды, сондықтан екі-үш оқулықты оқып шығу жеткілікті (осы сияқты). Содан кейін сіз осы бағдарламаға бірінші бағдарламалау тілін үйренгеннен кейін ораласыз.
  3. Бағдарламалаудың қарапайым тілін үйреніңіз (балалар үшін). Сіз «бала» атануға жасы келгендіктен мұндай тілді білуге ​​ұялмаңыз. Мұндай бағдарламалау тілдерінің мысалы ретінде Scratch келтіруге болады. Бұл бағдарламалау тілдері сіздің алғашқы бағдарламалау тілін үйренудегі қиындықты айтарлықтай төмендетуі мүмкін. Алайда, бұл қадам міндетті емес, оны алдыңғы қадамға дейін жасауға болады.
  4. Бағдарламалаудың процедуралық, объектілік және функционалдық модельдері туралы біліңіз.
  5. Бағдарламалық процедуралық тілдердің бірінде негізгі курстан өтіңіз. Қай тілді кейін таңдасаңыз да, сізге белгілі бір дәрежеде процедуралық бағдарламалау қажет болады. Сонымен қатар, бағдарламашылар процедуралық бағдарламалау - бұл жалпы бағдарламалау идеясын түсінудің ең оңай бастауы деп санайды.
  6. UML немесе ORM сияқты кем дегенде бір жетілдірілген модельдеу әдісін үйреніңіз.
  7. Кейбір шағын консольдық қосымшаларды немесе сол сияқты жазуды бастаңыз. Шағын жаттығуларды бағдарламалау тіліндегі кітаптарда қолдануға болады. Ол үшін сіз жазғыңыз келетін бағдарламалау тіліне сәйкес бағдарламалар жазу құралын таңдаңыз.
  8. Таңдауыңыз бойынша бағдарламалау тілінде жетілдірілген курстан өтіңіз. Келесі тұжырымдамаларды түсінгеніңізге және оларды қолданар алдында оңай қолдануға болатындығына көз жеткізіңіз:
    • Бағдарлама қолданушылары үшін ақпарат енгізу және шығару.
    • Бағдарламалардың процедуралық тілдердегі логикалық ағыны және орындалу ағыны.
    • Айнымалыларды жариялау, тағайындау және салыстыру.
    • Бағдарламалаудағы тармақ операторлары, егер..сосын..телсе және таңдаңыз / ауыстырыңыз..қарапшасын таңдаңыз.
    • While..do, do.. while / until, for..next сияқты ілмектер.
    • Процедуралар мен функцияларды құруға және шақыруға арналған сіздің бағдарламалау тілінің синтаксисі.
    • Мәліметтер түрлері және олармен манипуляциялар.
    • Пайдаланушы анықтаған мәліметтер типтері (жазбалар / құрылымдар / бірліктер) және оларды пайдалану.
    • Егер сіздің тіліңіз функцияны шамадан тыс жүктеуді қолдаса, оны түсініп алыңыз.
    • Сіз таңдаған тілдің жадқа қол жеткізу әдістері (көрсеткіштер, кез-келген ұяшықтың мазмұнын қалай оқуға болады ...)
    • Егер сіздің тіліңіз оператордың шамадан тыс жүктелуін қолдайтын болса, оны түсініп алыңыз.
    • Егер сіздің тіліңіз функция көрсеткіштерін қолдайтын болса, оны түсініп алыңыз.
  9. Сіз үйренген озық әдістерді қолданыңыз.
    • Нысанға бағытталған модель.

  10. Басқа бағдарламалау моделіндегі кем дегенде бір басқа бағдарламалау тілі туралы негізгі курстан өтіңіз. Әр модель үшін бір бағдарламалау тілін үйрену керек, ең озық бағдарламашылар үйренеді. Дегенмен, сіз әдетте тілден бастаңыз, біраз уақыт жұмыс істеп, алған білімдеріңізді қолданып, тәжірибе жасаңыз. Программалау тәжірибесінен кейін жаңа тілді үйреніңіз. Төмендегі тілдік массивтердің бірін қолданып көріңіз:
    • Логикалық бағдарламалау моделі.
    • Бағдарламалаудың функционалды моделі.

  11. Осы уақытқа дейін білген екі бағдарламалау тілін салыстырыңыз. Әр тілдің күшті және әлсіз жақтарын бағалаңыз. Мұны әдетте:
    • Бірінші бағдарламалау тілімен ертерек қарапайым жұмыс үлгісін алыңыз және оны екінші бағдарламалау тілінде қайта жазыңыз.
    • Жаңа жоба жасап, оны екі тілде де сынап көріңіз. Кейде сіз қай жобаны және қай тілді таңдағаныңызға байланысты оны екі тілде де жасай алмайсыз!
    • Екі тілдегі екі ұқсас мәлімдеме мен әрқайсысының ерекше ерекшеліктері арасындағы жылдам іздеу кестесі немесе жиынтық кесте сияқты салыстырыңыз.
    • Тілдердің біреуінің екіншісіндегі ерекше сипаттамаларына еліктеу әдісін табуға тырысыңыз.

  12. Сіз үйренген тілдердің бірін пайдаланып, бағдарламалау тұжырымдамаларын үйреніңіз. Бағдарламалау тілдерінің көпшілігінде визуалдауды қолдайтын нұсқалар / кітапханалар және коммуникацияға көмектесетін басқа бағдарламалау түрлері бар немесе ұқсас. Сіз мұны жасай аласыз:
    • Іс-шараларды бағдарламалау туралы аздап біліңіз. Көрнекі бағдарламалаудың көп бөлігі белгілі бір деңгейде оқиғаларға және оқиғалармен жұмыс істеуге байланысты (сіз таңдаған бағдарламалау тілін қолдана отырып).
    • Мүмкіндігінше жұмыс үстелінің бағдарламалық жасақтамасын қолданып көріңіз және олардың не істейтінін біліңіз. Бағдарламалық жасақтама жасаушы компаниялардың көпшілігі бағдарламалық жасақтаманы тестілеу үшін қолданушыларға өнімнің сынақ (бета) нұсқаларын ұсынады. Сондықтан пайдаланушы интерфейсінің жетістіктерінен хабардар болып отырыңыз.
    • Графикалық интерфейстер туралы кейбір мақалаларды немесе оқулықтарды оқыңыз.
  13. Өзіңіздің біліміңізді жобалаған шағын бағдарламалық жасақтамаларға қолдана бастаңыз. Бағдарламалау дағдыларын күнделікті кездесетін мәселелерге қолдануға тырысыңыз. Мысалы, файлдардың атауын өзгерту, мәтіндік файлдарды визуалды түрде салыстыру, каталогтағы файлдардың аттарын жадқа / мәтіндік файлға көшіру үшін бағдарлама жазу. Есіңізде болсын, бұл жай қарапайым.
  14. Виртуалды «бітіру жобасын» жасаңыз. Осы уақытқа дейін үйренген көрнекілік әдістерін қолдана отырып, жобаны аяқтаңыз.
  15. Бұрын тереңдетілген курстардан өтіп, егжей-тегжейлерге көбірек назар аудара отырып, рамкаға қатысты кеңестер мен кеңестерді үйреніп, көрнекі құрылымдар / кітапханалар / бумалар туралы түсініктеріңізді кеңейтіңіз. Интернет-ресурстардан сіздің жұмысыңыз.
  16. Бағдарламалау тіліне арналған басқа визуалды элементтер пакеттерін / кітапханаларын іздеңіз және оларды зерттеңіз.
  17. Графикалық курстан өтіңіз (графикалық дизайн емес). Бұл интерфейстің тартымды элементтерін жазғысы келетін бағдарламашыларға өте пайдалы болады.
  18. Ойын бағдарламашысы болыңыз (міндетті емес). Ойын бағдарламалау әлі күнге дейін жұмыс үстелін бағдарламалау болып саналады. Егер сіз ойын дамытушы болғыңыз келсе, осы әрекеттерді орындағаннан кейін ойын бағдарламалау туралы көбірек білуіңіз керек. Ойын бағдарламашылары үшін графика курсы қажет, ал алдыңғы қадамдарда таңдаудың екінші тілі логикалық / функционалды бағдарламалау тілі болуы керек (Prolog немесе Lisp таңдалуы керек). жарнама

6-дан 3-әдіс: Үлестірілген қолданбалы бағдарламалау

  1. Үлестірілген қолданбалы бағдарламалау туралы біліңіз. Таратылған қолданбалы бағдарламалауды көптеген адамдар үйрену қиын деп есептейді және компьютерлер мен коммуникациялық технологиялар туралы бай білімді қажет етеді.
  2. Дауыстық жүйелер мен олардың аппараттық құралдарын жылдам қарап шығыңыз. Бұл қадам міндетті емес. Алайда, желілік топологияларды түсіну өте пайдалы.
  3. Аппараттық архитектурамен және орталық концентраторлар (концентраторлар), коммутаторлар мен маршрутизаторлар (маршрутизаторлар) сияқты желілік құрылғылармен танысыңыз.
  4. Хаттамалар мен негіздер курсынан өтіңіз. Бағдарламалық жасақтаманы бастамас бұрын сізге Open Systems Connection (OSI) моделін, Ethernet, IP, TCP, UDP және HTTP туралы жақсы түсінік қажет.
  5. XML тілін үйреніп, онымен танысыңыз.
  6. Командалық аудармашының сценарий тілін үйренуден бастаңыз. Windows-қа негізделген бағдарламалау үшін бұл Windows сценарийлерімен жұмыс жасайтын кез-келген сценарий болуы мүмкін. Linux негізіндегі бағдарламалау үшін Bash және Perl сценарийлері жеткілікті болады. JavaScript екі платформада келесі себептерге байланысты ұсынылады:
    • Оған кез-келген операциялық жүйенің көптеген сценарий құралдары қолдау көрсетеді (Windows Scripting Host әдепкі бойынша JavaScript-ті қолдайды, Linux дистрибьюторларының көпшілігінде JavaScript сценарийлерімен байланыс қолдау пакеті бар) .
    • Оны көптеген бағдарламашылар үйренуді жеңілдетеді деп санайды.
    • Ол C, C ++, C #, Java және J # екінші бағдарламалау тілдерін таңдау қажет болған кезде көптеген басқа бағдарламалау тілдерімен танысуға мүмкіндік беретін ALGOL туынды синтаксисіне ие, олардың барлығы ALGOL-дан алынған.
    • JavaScript-ті үйрену арқылы сіз веб-парақтарға арналған клиенттік сценарийлермен танысасыз, бұл жағымды әсер етері анық!
  7. Біріншіден, процедуралық бағдарламалауды тек таңдаған сценарий тілінде қолданыңыз. Содан кейін сіз өзіңіздің сценарийлер тіліне және ол не қолдайтынына сәйкес жетілдірілген бағдарламалау үлгілері мен әдістерін қолдана аласыз. Сценарийдің барлық тілдері белгілі бір деңгейде процедуралық бағдарламалауға қатысты.
  8. Машиналар арасындағы байланысты жүзеге асыратын сценарийлерді жазу үшін үйренген сценарий тілін қолданыңыз. Мұны істеу үшін не қажет екенін анықтаңыз. Тек қарапайым байланыс ақпараты жеткілікті.
  9. Жұмыс үстелінің бағдарламалау / сценарий тіліне ауысыңыз. Үздік - Python сияқты мультипарадигма тілі. Осы екінші тіл туралы алдын-ала зерттеу. Java - көптеген себептер бойынша көптеген бағдарламашылардың таңдаған тілі. Алайда, C # осы жиымда жылдам импульс жасауға көмектеседі. Java және C # келесі себептерге байланысты қолданылады:
    • Олар үлкен топтардағы бағдарламашыларға бөліктерді іске асырудан аулақ болуға көмектесетін объектілік-бағдарланған бағдарламалау тілдері, өйткені олардың барлығы компоненттерді қолдауға қабілетті (яғни код бірліктері, шекара) белгілі бір тапсырма үшін орындалған аударманы басқа бағдарламаларда қолдануға болады)
    • Олар оқиғаларға негізделген бағдарламалауды, сондай-ақ OO (объектіге бағытталған) және процедуралық бағдарламалауды белгілі бір деңгейде қолдайды.
    • Тіл салынатын негізге үлестірілген сипат тән (Java жағдайында).
    • Желіні басқаруға арналған ашық көзге немесе рамкаға кіріктірілген алдын ала дайындалған бағдарламалау пакеттері бар; Бұл әзірлеушілердің басқа адамдардың өнімдерімен жұмыс істеуін жеңілдетеді.
  10. Тілдің негізгі ерекшеліктеріне, әсіресе желіні қолдайтын мүмкіндіктерге көбірек назар аударыңыз. Ақпаратты шығару, жұмыс терезесінің дизайны мен техникасы және интерфейс элементтері сияқты интерфейс элементтеріне азырақ назар аударыңыз.
  11. Қолданбалы архитектура мен дизайн бойынша дайындалған курстан өтіңіз. Сіз кітаптар, онлайн оқулықтар немесе академиялық курстар арқылы оқи аласыз. Қалай болғанда да, сіз үлестірілген қосымшалардың архитектурасын және оның тұжырымдамаларын түсінуіңіз керек.
  12. Қызмет компоненттерін қалай құруға болатындығын, сонымен қатар өзіңіз қалаған бағдарламалау тілін қолдануды біліңіз.
  13. Келесі технологиялардың бірін немесе бірнешеуін біліп алыңыз. Сіз, ең болмағанда, бәрінен өтуіңіз керек. Бағдарламалық жасақтама таратушыларының көпшілігі бір немесе екі бағдарламалау тілін ғана емес, бір операциялық жүйеге кем дегенде бір бағдарламалау тілін үйренеді. Себебі, егер сіз өзіңіздің қосымшаңыздың «таралуын» қаласаңыз, әр әйгілі амалдық жүйеге, ең болмағанда, оның бір нұсқасын беруіңіз керек.
    • Жалпы нысанды сұрауға арналған брокерлік архитектура (CORBA)
    • Қарапайым нысандарға қатынасу хаттамасы (SOAP)
    • Асинхронды JavaScript және XML (AJAX) (асинхронды JavaScript және XML)
    • Таратылған компонент нысаны моделі (DCOM) (үлестірілген компонент нысаны моделі)
    • .NET Remoting (қашықтан есептеуді өңдеу шешімі)
    • XML веб-қызметтері
    жарнама

6-дан 4-әдіс: Кітапхана / Платформа / Фреймворк / Негізгі бағдарламалау

  1. Негізгі бағдарламалау деген не екенін түсіну. Негізгі бағдарламашылар - бұл басқа бағдарламашылардың қолдануы үшін бағдарламалық қосымшаларды бағдарламалық код бірліктеріне түрлендіретін жай дамыған бағдарламашылар.
  2. Егер жоқ болса, онда қайта қолдануға болатын компоненттер / бумалар құруға көмектесетін бағдарламалау тілін үйреніңіз.
  3. UML және ORM курстарынан өту. Кітапхана жасаушылардың көпшілігі осылардың бірін немесе екеуін де пайдаланады.
  4. Бағдарламалық жасақтама инженері курсынан өтіңіз.
  5. Кем дегенде модульдік, компоненттік, объектілік және оқиғаларға негізделген бағдарламалау тұжырымдамалары мен әдістерін үйреніңіз. Бағдарламалау модельдері мен тілдерді қаншалықты көп түсінсеңіз, кітапхана / бума жасаушы ретінде соғұрлым сәтті боласыз.
  6. Әр түрлі амалдық жүйелер және олар қолдайтын бағдарламалау құрылымдары туралы көбірек біліңіз.
  7. Оқу күштеріңізді платформадан тәуелсіз құрылымдарға, бағдарламалау тілдеріне және технологияларға бағыттаңыз.
  8. Егер сіз осы уақытқа дейін оқыған тілдерде ANSI / ISO / IEEE / W3C стандарттарының нұсқалары болса, онда стандарттарды игеріңіз. Мүмкіндігінше стандартты кодтарды қолдануға тырысыңыз.
  9. Қарапайым кітапханаларға, әсіресе ашық кітапханаларға еліктеп көріңіз. Бұл кітапхана / бума жасаушы болудың алғашқы кезеңінде өте пайдалы. Аралық ғылыми есептеу және блок түрлендіру пакеттері сияқты қарапайым пакеттерден бастаңыз. Егер сіз студент болсаңыз, бағдарламалық емес пәндердің артықшылықтарын пайдаланыңыз, олардың теңдеулерін жүзеге асыруға тырысыңыз және ғылым кітапханалар ретінде көбейтіледі.
  10. Бағдарламалау саласында ашық бастапқы пакеттерді іздеп көріңіз. Алдымен буманың екілік файлдарын / орындалатын файлдарын жүктеп алыңыз. Оны пайдаланып көріңіз және оның күшті және әлсіз жақтарын табыңыз. Аяқтағаннан кейін бастапқы кодты жүктеп алып, оның қалай жасалғанын білуге ​​тырысыңыз. Сол кітапханаларды немесе олардың бөліктерін қайта жасап көріңіз. Алдымен оны бастапқы кодты көргеннен кейін жасаңыз, содан кейін бастапқы кодты көрмес бұрын жасаңыз. Кейінгі кезеңдерде сол кітапханаларды нақтылауға тырысыңыз.
  11. Бағдарламашыларға компоненттерді тарату мен орналастырудың әртүрлі тәсілдерін оқып үйреніңіз.
    • Көбінесе кітапхана / бума бағдарламашылары өздеріне ұсынылған барлық проблемалар туралы рекурсивті және / немесе бірнеше рет ойлауға бейім. Әрбір мәселені кішігірім есептер жиынтығы (қарапайым тапсырмалар топтамасы) немесе проблема ауқымын кішірек көлемге дейін қысқартудың қайталанатын процесі ретінде қарастырыңыз, содан кейін Диапазондарды бірінің үстіне бірін қойыңыз.
    • Кітапхана / бума жасаушылар жалпылауға бейім. Міне, оларға қарапайым нақты есептер ұсынылған кезде, олар көбінесе жалпы проблеманы ойластырады және кішігірім есептерді автоматты түрде шешетін етіп сол жалпы мәселені шешуге тырысады.
    жарнама

6-дан 5-әдіс: Жүйелік бағдарламалау

  1. Бағдарламалаудың қандай жүйеге әкелетінін түсініп алыңыз. Жүйелік бағдарламашы бағдарламалаудың нақты ғылымымен емес, «ғылымымен» айналысады. Өзіңізді белгілі бір фонмен байланыстырмаңыз.
  2. Жұмыс үстелінің бағдарламашысы болуға алғашқы үш қадамды орындаңыз.
  3. Сызықтық алгебра бойынша кіріспе курсына қатысыңыз.
  4. Есептеу курсына барыңыз.
  5. Дискретті математика және / немесе логика курсына қатысыңыз.
  6. Әр түрлі негізгі операциялық жүйелермен танысыңыз. Мұны:
    • Амалдық жүйелердің қалай орнатылатындығын түсіну.
    • Бір ДК-ге әртүрлі амалдық жүйелерді қалай орнатуға болатындығын біліңіз (міндетті емес, бірақ ұсынылады).
    • Бірнеше амалдық жүйені орнатыңыз. Жүйеге басқа плагин орнатпаңыз; оның орнына тек амалдық жүйе ұсынатын негізгі функцияларды қолданыңыз.
  7. Компьютердің аппараттық архитектурасы туралы курстан өтіңіз (немесе кітап оқыңыз) [[.
  8. Компьютердің әр түрлі аппараттық платформалары туралы түсінік қалыптастыру.
  9. Сіз таңдаған амалдық жүйені / аппараттық платформаны құрастыру тілімен бастаңыз. Кейінірек сіз басқа амалдық жүйелер / платформалар үшін ассемблер тілін үйренесіз.
  10. ANSI C және C ++ тілдерін, процедуралық ұғымдармен бірге үйреніңіз.
  11. Сіз таңдаған платформада C / C ++ стандартты кітапханаларын түсініп, қолданыңыз. Стандартты шаблон кітапханасына (STL) және, мүмкін, шаблон кітапханасына (ATL) ерекше назар аудару қажет.
  12. Интернеттегі ресурстардан, кітаптардан және курстардан іздеңіз, C платформасында сіз таңдаған мүмкіндіктерді түсініңіз.
  13. C және C ++ көмегімен кеңейтілген код жасау тәжірибесін қолданыңыз.
  14. Ассемблердің жетілдірілген тілін үйреніңіз.
  15. Операциялық жүйені жобалау курсынан өтіңіз.
  16. Сіз таңдаған нақты платформадан материалды тауып оқыңыз. Егер сіз Unix негізіндегі амалдық жүйені таңдасаңыз, бұл оңайырақ болады. Кейін жұмыс жасайтын жүйені игеріңіз.
  17. Не ұтасаңыз, соны қолданыңыз. Алдымен бірнеше шағын жүйелік утилиталар құрайық. Әдетте бұл сізге көмектеседі:
    • Жүйеде қол жетімді шағын құралдарды қайта жасап көріңіз.
    • Басқа амалдық жүйелерде бар утилиталарды өзіңізге көшіріп көріңіз.
  18. Тілдерді ең пайдалы ретімен үйреніңіз. Бұл бірінші бағдарламалау тілі өзінің мағынасын білетін жалғыз массив.Алдымен C ++, C #, Java немесе D емес, ANSI C үйреніңіз. Содан кейін C ++ үйреніңіз.
    • Бірінші тілді С және тек С тілдерімен шектеңіз, өйткені бағдарламалау жүйелері бағдарламашылардан келесі ұғымдармен таныс болуын талап етеді:
      • Нақты және бүкіл бастапқы кодты құрастырыңыз.
      • Төмен деңгейлі объектінің шығыс файлдары.
      • Екілік байланысқан кодтар.
      • Машина тілін / ассемблер тілін бағдарламалаудың төмен деңгейі. Көптеген адамдар C тілі альтернативті және ассемблер тілін үйренуге оңай деп санайды. Ол сонымен қатар құрастыру кодын кодқа кез-келген уақытта енгізуді қолдайды және бұл тек процедуралық (құрастыру сияқты).
    жарнама

6-ның 6-әдісі: бағдарламалау ғылымы

  1. Бағдарламашының не істейтінін біліңіз. Бағдарламалаушы ғалымдар - бұл өте дамыған бағдарламашылар, олар қосымшалар жасаудың орнына, кодтау, бағдарламалау тілдері және деректерді іздеу алгоритмі сияқты есептеу технологияларын дамытады. Бұл дәрежеге академиялық зерттеулерсіз сирек қол жеткізіледі.
  2. Жинақталған ғылыми білім информатикадағы 4 жылдық деңгейге тең. Бұған келесі жолдардың бірімен қол жеткізуге болады:
    • Нағыз академиялық дәрежеге ие болыңыз (бұл жиі кездеседі).
    • Қол жетімді университеттердің бірінен осындай дәрежеге арналған курстың контурын тауып, тақырыптарды өз бетіңізше оқыңыз немесе жеке курстарға барыңыз. Теориялық тұрғыдан сіз бұған қол жеткізе аласыз, бірақ біріншісіне баруыңыз керек.
  3. Мамандандырылған массивті таңдаңыз. Нақтырақ болыңыз, соғұрлым жақсы. Бұл сіздің қалауыңызға байланысты. Алайда, төменде компьютерлік бағдарламалау ғылымындағы негізгі тақырыптардың тізімі келтірілген:
    • Дизайн алгоритмдері (байланыстағы қателерді табу, жіктеу, кодтау, декодтау және анықтау).
    • Бағдарламалау тілдерін / компиляторларын жобалау / оңтайландыру
    • Жасанды интеллект массивтері (үлгіні тану, сөйлеуді тану, табиғи тілді өңдеу, нейрондық желілер)
    • Робототехника
    • Ғылыми бағдарламалау
    • Супер есептеу
    • Компьютерлік жобалау / модельдеу (CAD / CAM)
    • Виртуалды шындық
    • Компьютерлік графика (Компьютерлік графиканы көбінесе графикалық дизайнмен немесе графикалық қолданушы интерфейсімен безендірумен шатастырады.) Компьютерлік графика дегеніміз - компьютерлік жүйелерде графиканы бейнелеу және манипуляциялау әдісі. есептеу).
  4. Жоғары академиялық дәреже алу туралы ойланыңыз. Сіз магистратура немесе докторантура бағдарламасына қатыса аласыз.
  5. Таңдалған бағдарламалау саласына қатысты бағдарламалау тілдері мен технологияларын біліңіз. жарнама

Кеңес

  • Бағдарламалаудың кез-келген түрін қолданғыңыз келсе және қандай деңгейге қол жеткізгіңіз келсе, жергілікті мектепте немесе қоғамдастық колледжінде сабаққа қатысуды қарастырыңыз. «Информатика» сияқты терминдерден қорықпаңыз. Бастапқы талаптарды немесе талаптарды қажет етпейтін кез-келген сабақ сіз бағдарламалау негіздерін үйретуге бағытталады, бірақ оқытушыңыздан немесе тәлімгеріңізден бұрын тексеріңіз «Компьютерлік дағдылар» сияқты сабақтар кеңсе бағдарламаларына үйренуге немесе осыған ұқсас нәрселерге көбірек назар аудара алатындықтан, сіз іздеген нәрсеге көз жеткізіңіз.