Софтуерно Инженерство
Loading...
+ Нов въпрос
bobno avatar bobno 17 Точки

Фундаментални въпроси!

Здравейте, отварям тази тема, за да питаме това и онова какво е. Отскоро се занимавам с това, но някои неща не са ми ясни и като чета в гугъл, само се обърквам повече. Надолу може да задавате и вашите въпроси, за това, което не ви е ясно.

1. Какво е API?

2. Какво е FTP?

3. Какво е GIT, GitHub, GitLab?

Тагове:
1
Общи приказки
tiapko avatar tiapko 31 Точки

API - ако не си разбрал какво е това, четейки в google, значи още ти е рано за това :). В общи линии, като напишеш даден софтуер и искаш същият да си комуникира с друг софтуер, ти не позволяваш абсолютен достъп до кода си, а предоставяш нещо като рамка, чрез която да се комуникира. Примерно Youtube. Като пишеш софтуер, който да възпроизвежда техните продукти, те не ти дават достъп до цялата база или всичко свързано с видеото, а ти предоставят достъп, който ще ти свърши определена работа. Основният плюс на това е, че разработчикът на софтуера, правейки API драстично улеснява работата с програмата му, като също така елиминира много голяма част от възможностите за възникване на проблем.

 

FTP -  Ако допуснем, че питаш за термина свързан по-тясно с разработката на софтуер става въпрос за FTP (File Transfer Protocol). Да почнем по-от високо. Протоколи са рамки и правила, които трябва да се спазват за да оперира правилно някъква услуга. Примерно си чувал за IP (Internet Protocol). Това е набор от правила, които ти позволяват да комуникираш с отдалечени ( и не толкова) точки. Ако всяка от точките спазва този протокол, то можеш да комуникираш с тях безпроблемно. Това не означава, че това е единственият начин, но протоколите позволяват на множество различни разработчици да напишат нещо, което ще работи на всяко друго устройство, което е спазило този протокол. В този контекст FTP е протокол, който ти позволява да трансферираш статични файлове. Основният му фокус е трансфера на файлове - от там и името.

 

GIT, GitHub - след време, като започнеш да пишеш софтуер, но не го правиш само ти (примерно с колеги или приятели) ще видиш, че е изключително трудно да сте в "такт". Примерно ти пишеш някаква част от кода, а приятелят ти дописва друга част. GIT и като цяло всяка (version control system) ти позволяват да се води регистър на всички промени из код-а, така, че всеки да работи синхронизирано с другите участници. Ако направиш грешка, с такава система лесно можеш да се върнеш "назад във времето" и да продължиш отново от място, което е работело. GITHub е в момента най-популярната платформа, която предоставя такива услуги. Има и много други.

 

9
28/08/2017 10:53:23
bobno avatar bobno 17 Точки

Много благодаря. Четох за File Zilla и тя се свързва със сървърът посредством FTP. Прав ли съм ?

 

0
tiapko avatar tiapko 31 Точки

FileZilla е програмен продукт(програма) и една от многото и функции е да трансферира файлове( и името го подсказва), както си и видял. Както написах по-горе, ако сървърът разбира FTP протокол-а, то с FileZilla ще можеш да се свържеш с него.

2
bobno avatar bobno 17 Точки

Добре, нещо друго да питам. Когато качваме през FileZilla, ние качваме на сървъра. Когато качваме в GIT пак качваме на сървъра? Това така ли е ?

0