{"id":18037680,"url":"https://github.com/bbatsov/java-in-action-lectures","last_synced_at":"2025-04-05T00:23:23.374Z","repository":{"id":66234770,"uuid":"966057","full_name":"bbatsov/java-in-action-lectures","owner":"bbatsov","description":"The lectures from the \"Java in Action\" programming course","archived":false,"fork":false,"pushed_at":"2011-02-02T12:48:32.000Z","size":2143,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-10T08:45:46.383Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://groups.google.com/group/java-in-action","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bbatsov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2010-10-06T09:40:32.000Z","updated_at":"2019-08-13T14:37:20.000Z","dependencies_parsed_at":"2023-02-20T00:30:26.769Z","dependency_job_id":null,"html_url":"https://github.com/bbatsov/java-in-action-lectures","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbatsov%2Fjava-in-action-lectures","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbatsov%2Fjava-in-action-lectures/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbatsov%2Fjava-in-action-lectures/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bbatsov%2Fjava-in-action-lectures/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bbatsov","download_url":"https://codeload.github.com/bbatsov/java-in-action-lectures/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247267633,"owners_count":20911016,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-30T13:13:16.946Z","updated_at":"2025-04-05T00:23:23.351Z","avatar_url":"https://github.com/bbatsov.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Java in Action\n\n## Java Begins\n\n1. Въведение в средата за програмиране Java\n    * кратка история на Java\n    * платформата Java\n    * Java виртуалната машина\n    * инсталиране на Java виртуална машина\n    * езикът Java\n    * среди за разработка\n    * първа програма на Java\n2. Основни понятия в Java\n    * структура на Java програма\n    * поток на изпълнение в Java\n    * основния типове от данни\n    * управляващи конструкции\n    * масиви\n3. Класове и обекти\n    * класове\n    * обекти\n    * преглед на класовете от стандартната библиотека\n    * създаване на собствени класове\n4. Наследяване и полиморфизъм\n    * Наследяване\n    * Виртуални методи\n    * Предефиниране на методи\n    * абстрактни класове\n5. Интерфейси и вътрешни класове\n    * интерфейси\n    * вътрешни класове\n    * ползва и приложения\n6. Увод в създаването на графични потребителски интерфейси със Swing\n    * въведение в swing\n    * обработка на събития в Swing\n7. Стардартни компоненти в Swing.\n    * Преглед на MVC архитектурата на Swing\n    * Стандартни Swing widgets\n    * Layout management\n8. Привеждане в експлоатация на Java приложения\n    * задълбочен анализ на jar файловете\n    * въведение в Java web start\n    * съхранение на настройките на приложение\n9. Обработка на изключения, водене на журнал, очаквания и техники за дебъгване\n    * типове изключения\n    * техники за обработка на изключения\n    * прихващане на изключения\n    * водене на журнал(log)\n    * проверка на коректност на изпълнение на програма с assertions(очаквания)\n10. Генерично програмиране\n    * нужда от генерично програмиране\n    * генерични класове\n    * генерични колекции\n    * създаване на генерични класове\n11. Колекции в Java\n    * видове колекции\n    * основни колекции\n    * примери\n12. Паралелно програмиране в Java\n    * нишки\n    * задачи(tasks)\n    * java.concurrent\n\n##Java Forever\n\n1. Потоци и файлове\n    * потоци\n    * текстов вход и изход\n    * двоичен вход и изход\n    * zip архиви\n    * сериализация на обекти\n    * управление на файлове\n    * нов ВИ ППИ\n    * Регулярни изрази\n2. XML\n    * обработка на XML документ\n    * валидация на XML документ\n    * XPath\n    * поточни парсъри\n    * генериране на XML\n    * XSL трансформация\n3. Мрежово програмиране\n    * сокети\n    * свързване със сървър\n    * реализиране на сървър\n    * изпращане на ел. поща\n    * осъществяване на URL връзки\n4. Работа с бази данни\n    * JDBC архитектура\n    * SQL\n    * Работа с JDBC\n5. Интернационализация\n    * Локали\n    * Числови формати\n    * Кодировки\n    * Ресурсни пакети\n6. Въведение в Java EE\n    * Основни компоненти\n    * Application servers\n    * Уеб контейнери\n    * Сървлети и JSP\n7. Създаване на уеб приложения\n    * JSF 2.0\n    * Жизнен цикъл на приложенията\n    * Facelets\n    * Managed beans\n8. Създаване на бизнес слой на приложенията с EJB 3.1\n    * Session beans\n    * Transaction handling\n    * Dependency injection\n    * Scheduling tasks\n9. Java Persistence API\n    * Object relational mapping\n    * Persistence Providers\n    * Entity classes\n    * Entity manager\n    * JPQL\n10. Популярни въшни библиотеки и платформи за разработка\n    * Swing\n    * Web\n    * General purpose\n11. Модерни езици за JVM\n    * Groovy\n    * Scala\n    * Clojure\n12. Добър стил\n    * Организация на сорс файлове\n    * Организация на Maven пакети\n    * Документация\n    * Добри програмистки практики\n    * Съвети за ефективен дизайн на класове\n13. Оптимизация\n    * Анализиране на работещо приложение\n    * Търсене на bottlenecks в приложение\n    * Работа с profiler\n    * Техники за оптимизация\n    * Алтернативи на оптимизацията\n14. Java.next()\n    * Основни проблеми на Java в момента\n    * Поглед към Java 7\n    * Поглед към Java 8\n    * Дългосрочното бъдеще на Java\n\n# Компилацията на презентациите от сорс код\n\nВсички презентации са написани на LaTeX и ползват Beamer класа и\nтемата Torino. Инсталацията на пакет то TeXLive ще ви обзаваде с LaTeX\nи Beamer, а темата може да си я дръпнете от моето git хранилище. След\nтова компилацията на презентациите е само една стъпка:\n\n`pdflatex presentation-name.tex`\n\nРезултатът от изпълнението на тази команда ще е pdf файл.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbatsov%2Fjava-in-action-lectures","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbbatsov%2Fjava-in-action-lectures","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbbatsov%2Fjava-in-action-lectures/lists"}