JavaRush /Java blogi /Random-UZ /Qanday qilib oddiy koderdan ajoyib dasturchiga aylanish m...

Qanday qilib oddiy koderdan ajoyib dasturchiga aylanish mumkin? Kompyuter fanini o'rganish

Guruhda nashr etilgan
IT va dasturiy ta'minotni ishlab chiqishning zamonaviy dunyosi juda og'ir - koderlarning malakasiga qo'yiladigan yuqori talablar, doimiy o'zgarishlar va kuchayib borayotgan raqobat ushbu sohada ishlayotgan mutaxassislarni doimiy ravishda o'zlarini o'qitish va rivojlantirishga majbur qiladi. Doimiy o'rganish hatto izlanayotgan mutaxassis bo'lib qolishi uchun ham talab qilinadi, chunki "hayotdan orqada qolish" nokni otish kabi osondir. Qanday qilib oddiy koderdan ajoyib dasturchiga aylanish mumkin?  Kompyuter fanini o'rganish - 1JavaRush-dagi nashrlarda biz IT rivojlanishining jozibali dunyosida iloji boricha raqobatbardosh bo'lish uchun o'quvchilarga to'liq rivojlanish va o'z-o'zini o'rganishga yordam berishga harakat qilamiz. Bugungi maqolada biz juda keng fan - kompyuter fanida o'z-o'zini tarbiyalash haqida gapiramiz. Biz kompyuter fanlari (KS) kontseptsiyasiga aynan nimalar kiritilganligini birozdan keyin ko'rib chiqamiz, ammo hozircha savolga javob berishga harakat qilaylik: aslida dasturchi nima uchun CS fanlarini o'rganishi va ushbu sohani yaxshilashga intilishi kerak. .

Kompyuter fanlari - nima uchun o'qitish kerak?

“Dasturlash siz biladigan narsa emas. Bu siz tushunadigan narsadir." Kris Pine, dasturlash bo'yicha mutaxassis, kitoblar va qo'llanmalar muallifi. “Dasturlash qaysidir maʼnoda chizishga oʻxshaydi. Avvaliga sizda faqat bo'sh tuval va materiallar mavjud. Bularning barchasi bilan nima qilish kerakligini aniqlash uchun ilm-fan, san'at va hunarmandchilik kombinatsiyasidan foydalanish kerak." Endryu Xant, eng ko'p sotilgan "Pragmatik dasturchi" kitobining muallifi va Agile Manifestining hammuallifi. Qayerga ketayotganimizni tushunish qiyin emas. Haqiqatan ham yaxshi dasturchi bo'lish yoki oddiy koderdan kamida bir pog'ona yuqoriga ko'tarilish uchun siz dasturlash tillaridan tashqari, turli sohalarda eng keng va shu bilan birga juda chuqur bilimga ega bo'lishingiz kerak. CS kontseptsiyasiga kiritilgan fanlarni o'zlashtirish esa bu erda birinchi o'rinlardan biridir.

Kompyuter fanlari fanlari

Keling, informatika faniga qanday fanlar kiritilganligini ko'rib chiqaylik. Fanlarning qisqacha tavsiflariga ularni o'rganish sabablari bilan biz Oz Nova va Myles tomonidan yozilgan kompyuter fanlari bo'yicha ingliz tilidagi eng yaxshi qo'llanmadan ushbu mavzu bo'yicha eng yaxshi kitob va eng yaxshi bepul video ma'ruzalar turkumiga tavsiyalar qo'shamiz. Byrne, San-Fransiskodagi Bredfild kompyuter fanlari maktabi o'qituvchilari.
  • Dasturlash

    Dasturlash - bu informatika fanining asosi va asosiy intizomi; ko'pchilik talabalar u bilan CS kursini o'rganishni boshlaydilar. Eng yaxshi CS dasturlash kurslari nafaqat yangi boshlanuvchilar uchun, balki uni birinchi marta o'rganayotganda ma'lum dasturlash tushunchalari va modellarini o'tkazib yuborgan tajribali koderlar uchun ham foydali bo'ladi.

    Eng yaxshi kitob: “Kompyuter dasturlarining tuzilishi va talqini”. Mualliflar: Gerald Sussman va Hal Abelson.

    А на JavaRush, кстати говоря, всем желающим доступен для изучения легендарный гарвардский курс “CS50. Основы программирования”, fully переведенный на русский.

    Лучшая видеолекция: Brian Harvey’s Berkeley CS 61A

  • Алгоритмы и структуры данных

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

    Лучшая книга: The Algorithm Design Manual. Author: Стивен Скьена (Steven Skiena).

    Лучшая видеолекция: лекции Стивена Скьены

  • Компьютерная архитектура

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

    Лучшая книга: “Архитектура компьютера и проектирование компьютерных систем” (Computer Organization and Design). Authorы: Дэвид Паттерсон (David Patterson) и Джон Хеннеси (John Hennessy).

    Лучшая видеолекция: Berkeley CS 61C

  • Операционные системы

    Практически весь code, написанный программистом, будет выполняться операционной системой, поэтому знание принципов работы ОС также является важным элементом.

    Лучшая книга: “Введение в операционные системы” (Operating Systems: Three Easy Pieces). Authorы: Андреа Арпачи-Дюссо (Andrea Arpaci-Dusseau) и Ремзи Арпачи-Дюссо (Remzi Arpaci-Dusseau).

    Лучшая видеолекция: Berkeley CS 162

  • Компьютерные сети

    Мало что в современном ИТ может обойтись без использования Интернета, поэтому ИТ-специалистам важно понимать, How Всемирная сеть работает, чтобы использовать ее потенциал по полной.

    Лучшая книга: Computer Networking: A Top-Down Approach. Authorы: Джеймс Куросе (James Kurose), Кит Росс ( Keith Ross).

    Лучшая видеолекция: Stanford CS 144

  • Математика для computer science

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

    Лучшая книга: Mathematics for Computer Science. Authorы: Альберт Р. Мейер (Albert R. Meyer), Эрик Леман (Eric Lehman) и Фрэнк Томсон Лейтон (Frank Thomson Leighton).

    Лучшая видеолекция: Tom Leighton’s MIT 6.042J

  • Базы данных

    Базы данных — относительно новая область компьютерных наук, и экспертов в ней по-прежнему не так уж много. Данные — еще один ключевой элемент CS, потому что они лежат в основе большинства значимых программ, но мало кто понимает, How на самом деле работают системы баз данных.

    Eng yaxshi kitob: Ma'lumotlar bazasi tizimlarida o'qishlar. Mualliflar: Jozef M. Xellershteyn va Maykl Stonebraker.

    Eng yaxshi video ma'ruza: Jo Xellershteynning Berkeley CS 186 Qanday qilib oddiy koderdan ajoyib dasturchiga aylanish mumkin?  Kompyuter fanini o'rganish - 2

  • Tillar va kompilyatorlar

    Dasturlash tillari va kompilyatorlarning texnik jihatdan qanday ishlashini tushunish sizga kod va dasturlash mahoratingizni oshirish imkonini beradi. Bu, shuningdek, yangi tillarni o'rganishni osonlashtiradi, bu esa uzoq muddatda har qanday dasturchi uchun juda muhimdir.

    Eng yaxshi kitob: Kompilyatorlar: tamoyillar, texnikalar va vositalar. Mualliflar: Alfred Aho, Monika S. Lam, Ravi Seti, Jeffri Ullman.

    Eng yaxshi videoma'ruza: Aleks Aikenning Lagunita bo'yicha kursi

  • Tarqalgan tizimlar

    Bugungi kunda ko'pchilik tizimlar tarqatilgan. Kompyuterlar va dasturlar murakkablashib bormoqda va tarqatilgan tizimlar haqidagi bilimlar sizning dasturiy ta'minotingiz to'g'ri va muammosiz ishlashini ta'minlash uchun foydali bo'ladi.

    Eng yaxshi kitob: Taqsimlangan tizimlar, 3-nashr. Mualliflar: Maarten van Steen va Endryu S. Tanenbaum.

    Eng yaxshi video ma'ruza: CS 436: Taqsimlangan kompyuter tizimlari

Informatika fanini o'rganish bo'yicha maslahatlar

Va nihoyat, CS fanlarini o'rganishni rejalashtirayotganlar uchun ba'zi maslahatlar. Qanday qilib oddiy koderdan ajoyib dasturchiga aylanish mumkin?  Kompyuter fanini o'rganish - 3
  1. CS fanlari bo'yicha amaliy ko'nikmalarni rivojlantirish

    Boshqa IT kurslari kabi CS ning afzalliklaridan biri shundaki, siz egallagan nazariy ko'nikmalar darhol amaliyotda qo'llanilishi mumkin. Buni unutmang va eng yaxshi natijalarga erishish uchun nazariyani amaliyot bilan almashtiring.

  2. Kechiktirmang

    Informatika - bu juda murakkab fan bo'lib, uni o'rganish kam odam uchun oson, ayniqsa birinchi navbatda. Shuning uchun, CS fanlarini o'rganishni boshlaganingizda, siz kechiktirishdan qochishingiz kerak - nazariyani, muammolarni hal qilishni va amaliyotni o'zlashtirishni keyinroq qoldirmang, chunki bu nafaqat o'rganishni juda uzoq vaqtga olib boradi, balki unchalik samarali bo'lmaydi.

    Qanday qilib oddiy koderdan ajoyib dasturchiga aylanish mumkin?  Kompyuter fanini o'rganish - 4
  3. O'zingizni bitta kurs bilan cheklamang

    Qanchalik yaxshi bo'lishidan qat'i nazar, bitta kursdan fan bo'yicha barcha kerakli bilimlarni olish imkoniyatiga ega bo'lishni kutmang. Mavzuni kengroq tushunish uchun kamida bir nechta ma'lumot manbalariga murojaat qilish yaxshidir.

  4. O'xshash odamlarni toping

    Bu biroz ahamiyatsiz bo'lib tuyuladi, lekin samarali o'rganish, hayotdagi ko'p narsalarni qilish kabi, eng yaxshi fikrlaydigan odamlar guruhining bir qismi sifatida amalga oshiriladi. CSni o'rganish uchun guruh topish bir qancha sabablarga ko'ra foydali bo'lishi mumkin. Bu sizga samaraliroq o'rganishga, vazifalar va muammolarni birgalikda hal qilishga, o'rganishdagi muvaffaqiyatlaringizni va yangi bilimlarni qo'llash ko'nikmalarini boshqalar bilan solishtirishga yordam beradi.

  5. Faqat kodni emas, balki so'zlarni yozishni o'rganing

    O'z malakalarini oshirish va professional darajasini oshirish uchun CSni o'rganayotgan dasturchilar uchun ko'plab mutaxassislarning yana bir keng tarqalgan maslahati: yozishni o'rganing (kod emas), ya'ni so'zlarni jumlalarga qo'ying va jumlalardan matnlar tuzing. Ushbu mahorat har qanday ishlab chiquvchi uchun juda muhimdir va uning yo'qligi nafaqat kompyuter fanini o'rganishda, balki kasb sifatida dasturlashning boshqa jihatlarida ham taraqqiyotga to'sqinlik qiladi.

Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION