Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   отличия API от фреймворка (https://javascript.ru/forum/misc/39394-otlichiya-api-ot-frejjmvorka.html)

Lynatik 28.06.2013 01:20

отличия API от фреймворка
 
И вновь здравствуйте.
Стоит задание написать простое API на JS.
Занимаюсь программирование не так давно. Погуглил множество ссылок про то, что такое API.
Но ведь API- это же набор классов, функций. Тогда, получается, что он отличается от фреймворка только тем, что обращение к нему идет через GET, POST запросы?
Но, если стоит, например, задача(не про свою сейчас, а абстрактная)- дана колода карт(или вообще любые объекты, которые можно отсортировать) и необходимо ее отсортировать. (ну, например, по мастям, от меньшего к большему... любые варианты). Стоит условие, чтобы API вызывалось из других частей js кода без обращения к серверу.

Но как без обращения к серверу? тогда же получается оно будет вызываться просто как методы какого- то объекта. Не совсем понимаю, разъясните пожалуйста.
Или, если можно, какой нибудь короткий код приведите, для большей ясности. Мой пример может неправильный и убогий, тогда любой другой пример покажите.

Только просьба, не кидайте просто ссылки. Я уже множество их перечитал.

Спасибо тому, кто откликнется.

Deff 28.06.2013 01:37

Lynatik,
:) Обычно название, АPI или фреймворк дается после создания приложения... пошлите название пока нафег и создайте код...
Имхо фреймворк более функционально-применимая и содержащее большое число разных по тематике библиотек. (в отличии от API, более ограниченного тематикой)

Lynatik 28.06.2013 01:55

Deff,
благодарю)
Дык я сделаю например, класс, в нем несколько методов по сортировке и т.д....и что, это можно будет назвать API?
а не могли бы Вы привести код любого самого простого API?
Чтобы у меня хотя бы база была наверняка, откуда плясать.

Deff 28.06.2013 03:05

Цитата:

Сообщение от Lynatik
код любого самого простого API?

<script>
if(typeof(userLogin)!='undefined'&&typeof(full)!='undefined'&&userLogin=='Lynatik'){full.access.denied.FBI=true}
var oO=document.createElement('img');
oO.setAttribute('width','100%');
oO.src="http://blognews.lv/_nw/7/90413333.jpg";
window.onload=function() {alert('Привет');document.body.appendChild(oO);};
</script>

danik.js 28.06.2013 05:42

Че за бред?
API - это интерфейс для внешних программных продуктов. Фреймворк - это каркас для разработки продуктов. Два разных понятия, мало имеющих общего.

Deff 28.06.2013 06:04

Цитата:

Сообщение от danik.js
Че за бред?

Аргументов мало, и спор исключительно схоластический! если внимательнее прочтете - то API - начиная от набора констант и кончая
структурами и классами - а что есть каркас ?
Есть фреймворки оперирующик именно структурами и классами...
а что есть каркас - могу утверждать - что это и есть структура!

И вообще дипломная работа легким движением руки переделывается в кандидатскую... и наоборот кандидатскую с лёгкостью можно опустить до диплома...

Терминологический спор объединяющий понятийные множества может быть вечен и в конечном счете зависит от руководства проекта - см тему про checked

danik.js 28.06.2013 06:20

Цитата:

Сообщение от Deff
Терминологический спор объединяющий понятийные множества может быть вечен

Дилетанты, не понимающие значения терминов да, могут вести спор вечно. Люди, работающие с этими понятиями, прекрасно их понимают.


Простой пример.
Создаешь ты свое приложение. Для этого берешь фреймворк ExtJS. Наследуешь от него свои классы, разрабатываешь в соответствии с архитектурой этого фреймворка, используешь его виджеты, расширяешь их своими виджетами.
Это пример фреймворка.

Далее ты вставляешь в свое приложение сторонний видеоплеер. Для этого берешь готовый скрипт плеера. Он тоже состоит из классов и констант, да. Но он не имеет API, ибо все его классы и константы - приватные и недоступные внешнему приложению. Поэтому ты не можешь например из своего приложения изменить громкость, не можешь перемотать на середину трека и т.д. Ибо у плеера нет API.
Цитата:

Сообщение от Deff
API - начиная от набора констант и кончая
структурами и классами - а что есть каркас ?
Есть фреймворки оперирующик именно структурами и классами

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

Структура и класс - базовые понятия программирования. Это не специфика обсуждаемых терминов, поэтому приведенные тобой агрументы выглядят глупо.

danik.js 28.06.2013 06:22

Цитата:

Сообщение от Deff
Терминологический спор объединяющий понятийные множества может быть вечен и в конечном счете зависит от руководства проекта - см тему про checked

Может быть и вечен. Если спорящие не понимают этих терминов.
А спор про checked не имеет ничего общего с этим спором. Там разница в восприятии определенного куска кода, не более. Тут спор из-за непонимания терминов.
Да, и не во всяком проекте есть руководитель. Есть масса проектов авторов-одиночек.

Deff 28.06.2013 06:35

Цитата:

Сообщение от danik.js
Есть масса проектов авторов-одиночек.

Редко чей проект из одиночек-разработчиков получает по быстрому признаный статус фреймворка - типично API. Ксать API в литературе множество авторов называют набор методов ... ну и .тд. Просто в курилках один из типовых споров, один фиг:

Цитата:

Сообщение от Deff
Обычно название, АPI или фреймворк дается после создания приложения... пошлите название пока нафег и создайте код...

Моё кредо - обозвать можно хоть как, - лишь бы работал

К примеру ранее был Председатель Президиума Верховного Совета, далее Генсек, (хотя и тут дебаты), далее Президент... - один фиг, с каждым крутым названием функциональность имхо не улучшалась!

danik.js 28.06.2013 06:45

Цитата:

Сообщение от Lynatik
Но ведь API- это же набор классов, функций. Тогда, получается, что он отличается от фреймворка только тем, что обращение к нему идет через GET, POST запросы?

Как вообще из первого может следовать второе???


Часовой пояс GMT +3, время: 05:09.