Уроци по програмиране · Java, C#, Python, JavaScript

Виж как работи кодът.

Не само какво пише, а какво става: къде отива стойността, накъде сочи стрелката, кой ред върви сега. Кратки уроци от карти, с 3D сцена до кода.

Започни с

  • 6590 програми, пуснати и сверени
  • 132 3D сцени
  • без регистрация

Две променливи, един обект

coffee сочи същия обект, затова печата 8.0.

Product coffee = new Product();
coffee.price = 10;
Product sale = coffee;
sale.price = 8;
System.out.println(coffee.price);  // 8.0
Стъпките с думи
  1. new прави обекта: полетата му са с начални стойности. В coffee отива стрелка към него.
  2. По стрелката от coffee: цената на обекта става 10.
  3. sale = coffee копира стрелката, не обекта. Две стрелки, един обект.
  4. По стрелката от sale: цената в същия обект става 8.
  5. coffee сочи същия обект, затова печата 8.0.

Една идея, четири езика

Понятието е едно. Синтаксисът е различен.

Един и същ клас на Java, C#, Python и JavaScript. Натисни „Пусни“ и гледай програмата ред по ред: кой ред върви, какво има в обекта, какво излиза накрая.

Dog.javaпроверен

class Dog {
    private final String name;

    Dog(String name) { this.name = name; }

    String speak() { return name + ": Бау!"; }

    public static void main(String[] args) {
        System.out.println(new Dog("Шаро").speak());
    }
}

Натисни „Пусни“

Как се учи

Урок от карти, една по една

На екрана е една карта. Първо проблем, който познаваш, после идеята и сцената, после малки задачи с ръцете. Никаква стена от текст. Напредъкът се пази в браузъра ти.

Урок „Защо методи“, Java

  1. ПроблемЕдна промяна, три места

    Започва от нещо, което боли: един и същ код, преписан на три места.

  2. ИдеятаПиши го веднъж, викай го по име

    Идеята с прости думи, после как точно се пише.

  3. Виж гоКакво става при извикване

    3D сцената върви заедно с кода и показва паметта.

  4. ПробвайВ какъв ред? Кое липсва?

    Подреди редовете, допиши липсващото, намери грешката.

  5. УпражнениеБележката и триъгълникът

    Цяла малка програма, която пишеш сам.

  6. ТестПровери се

    Кратък тест. Грешният отговор казва защо е грешен.

Опитай урока: „Защо методи“

Курсове

Целият път, модул по модул

Всеки урок ползва само неща, които вече си видял. Отвори модул и започни от първия му урок.

Проверен код

Кодът не е преписан на око. Пуснат е.

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

програми
65905522 пуснати, 1056 с вход, 12 само компилирани (WPF)
задачи „намери грешката“
418грешката е точно на реда, който задачата сочи
3D сцени
132всяка стъпка сочи истински ред от кода си
проблема
0при последната проверка

Със същите версии, с които ще пишеш

  • Java 21
  • .NET 10
  • Python 3.12
  • Node 22
  • Docker
  • без мрежа

Въпроси

Често питат

Трябва ли регистрация?

Не. Всичко се чете направо. Напредъкът се пази само в твоя браузър и никъде другаде.

Нужно ли е да знам нещо предварително?

Не. Модулът „Добре дошъл“ казва какво е езикът, къде се ползва и как да подготвиш компютъра си. Всеки следващ урок ползва само неща, които вече си видял.

Кой език да избера?

Понятията са едни и същи, затова няма грешен избор. Ако учиш по учебна програма, вземи нейния език. Ако не: Python се чете най-лесно и е навсякъде в данните и автоматизацията, JavaScript върви във всеки браузър и на сървъра, Java и C# показват типовете най-ясно. C# има и модул за уеб и десктоп приложения.

Еднакви ли са уроците на четирите езика?

Темите, сцените и задачите са едни и същи. Където езикът прави нещо иначе, урокът показва неговия начин: в Python и JavaScript функциите не са в клас, типовете не се пишат, а вместо overloading има стойности по подразбиране.

Какво стана със старите сайтове за Java и C#?

Материалът им е пренесен тук и пренаписан като уроци. Всяка стара страница води към урока, в който отиде съдържанието ѝ.

Какво ново

Последни промени

  1. Уроците и на английски

    Всеки урок, игра и проектът имат английска версия, заедно с кода: програмите печатат на английски и минават същата проверка. Сцените пишат надписите си на езика на страницата.

  2. Python и JavaScript

    Същите уроци, сцени, задачи и проверки, на Python и на JavaScript. Където езикът прави нещо иначе (функции без клас, типове без деклариране, няма overloading), урокът показва неговия начин.

  3. По-широки уроци, .NET 10 и един голям проект

    На голям монитор сцената стои до кода, а изходът до програмата. Кодът на C# се проверява с .NET 10. Шестте подобни упражнения отстъпиха място на един проект стъпка по стъпка: хотелски резервации.

  4. Уроци от карти, с 3D сцена във всеки

    Лекциите и упражненията станаха модули от кратки уроци: проблем, идея, сцена, малки задачи, упражнение и тест. Урок не ползва нищо, което още не е показано. Добавени са три игри.

  5. Курсовете по Java и C# са тук

    Материалът от java.gh.igergov.com и csharp.gh.igergov.com е пренесен и пренаписан. Всеки стар адрес води към урока, в който отиде съдържанието му.

За сайта

Откъде идва wannacode

Сайтът започна като помощ за студентите в Техническия университет – София: лекции и упражнения по обектно-ориентирано програмиране с Java и C#.

Днес е отворен за всеки, който иска да се развива в програмирането, на четири езика: Java, C#, Python и JavaScript. Отделен курс учи бази данни и SQL.

Създаден от Иво Гергов като част от кампанията на Evo Tech за достъпно обучение по програмиране.

Първият урок е на един клик.

Отвори курса, прочети идеята, пусни кода. Сайтът ще помни докъде си стигнал.