Задачата е дадена на контролно 1 по ПИК3 на 14.112015г.
Имате за задача да релизирате back end компонент от уеб система за резервация на билети за събития. Всеки ден във файл постъпват наличните билети за нови концерти. Системата зарежда билетите и „отваря врати” за покупко-продажбата, файлът се трие и се зарежда отново на другия ден. Клиенти се свързват през уеб базиран интерфейс към системата и си резервират билети. Continue reading Примерна задача за контролно 1→
Както вече споменахме символните низове в Java не са нищо друго от поредица от символи. Познати от C, това е т.нар. char[] – масив от символи. В Java съществува клас String, който репрезентира типа данни символен низ. Тъй като String е клас, то за да запишем в дадена променлива низ, то ни трябва обект от тип класа String. Както при всички референтни типове, така и при String, стойностите се пазят в Heap-a. Continue reading Символни низове. Динамични стрингове. Регулярни изрази.→
Изключение(Exception) е събитие, което настъпва по време на изпълнение на програмата и затруднява нейното нормално завършване. Continue reading Изключения→
В темата за методи разбрахте, че съществуват и т.нар абстрактни методи. Това са методи, които съдържат само декларация, но нямат имплементация. Декларират се с ключовата дума abstract. Ако декларираме поне 1 такъв метод в рамките на даден клас, то този клас задължително трябва да съдържа в декларацията си думата abstract, тоест трябва да бъде абстрактен. Continue reading Абстрактни класове и интерфейси. Полиморфизъм→
След като разгледахме типовете данни в езика Java, установихме, че те се делят на примитивни и на референтни. Казахме, че всеки примитивен тип си има и свой еквивалентен референтен, който го обвива. В теорията на обектноориентираното програмиране основно място заема идеята за обектите, като начин да се опише заобикалящия ни свят. В този ред на мисли, за да бъде дефиниран даден обект Х, който има качества У и Z и може да извършва еди какви си действия {x,y,z}, то той трябва да бъде създаден по предварително определен конкретен шаблон. Затова от тук нататък нека да приемем за определение следното твърдение: Continue reading Класове. Наследяване. Създаване и използване на обекти.→
Методите в Java са познатите от други езици функции. Тенденциите в съвременното програмиране се базират строго на стратегията, позната от древността „Разделяй и владей“. Тоест, разделянето на задачата на множество по-малки подзадачи би помогнало за по-лесно осмисляне, по-добра четимост, по- високо ниво на контрол, по-лесно откриване на грешки и тн. Естествено причината за това е намаленият обем на анализираните подзадачи. От друга гледна точка, добра практика е писането на код, който може да бъде използвам многократно или т.нар. code reusing. Естествено, всичко, което може да напишем като код в една програма, би могло да бъде написано и в една единствена главна функция. Не само че е лоша практика, но е почти невъзможно за четене, анализ и разбиране. А един код, обикновено се чете в последствие от много програмисти, които правят промени по него или го доразвиват. Continue reading Методи – деклариране, имплементация и извикване на методи. Видове методи.→
Основна градивна единица на езиците за програмиране са променливите. Известни от математиката, а и от С, променливите служат за временно съхранение на данни в дадена програма. В частност – в Java променливите се делят на два типа – примитивни и референтни. Едните се различават от другите главно по това къде стоят в паметта, както и по сложността и многозначителността си. Примитивните типове данни в езика Java не се различават съществено от тези в езика С. Както е известно всички примитивни типове данни се характеризират с име, размер и стойност по подразбиране. Езикът разполага със следните типове: Continue reading Въведение в Java – Примитивни типове и променливи. Оператори и изрази. Стандартен вход и стандартен изход от конзолата. Цикли. Масиви.→