JavaRush /Блоги Java /Random-TG /Сатҳи 40. Ҷавобҳо ба саволҳои мусоҳиба дар мавзӯи сатҳ
lichMax
Сатҳи
Санкт-Петербург

Сатҳи 40. Ҷавобҳо ба саволҳои мусоҳиба дар мавзӯи сатҳ

Дар гурӯҳ нашр шудааст
Сатҳи 40. Ҷавобҳо ба саволҳои мусоҳиба дар мавзӯи сатҳ - 1Воқеан, саволҳои зерин дар ин сатҳ буданд:
  1. Суроғаи IP чист?
  2. Фарқи байни мизбон ва домен чист?
  3. Шумо кадом усулҳои HTTP-ро медонед?
  4. Фарқи байни усулҳои GET, POST ва HEAD чист?
  5. REST чист?
  6. Чаро синфи Calendar дар Java лозим аст?
  7. Чӣ тавр санаро дар Java ба формати дилхоҳ табдил додан мумкин аст?
  8. Фарқи байни URI ва URL чист?
  9. Розеткаҳо чист?
  10. Фарқи байни синфҳои Socket ва URL?
Ва инҳоянд ҷавобҳои ман:
  1. Суроғаи IP суроғаи ягонаи шабакаи гиреҳ дар шабакаи компютерӣ мебошад, ки дар стеки протоколи TCP/IP сохта шудааст. Интернет суроғаҳои беназири умумиҷаҳонӣ талаб мекунад; дар сурати кор кардан дар шабакаи маҳаллӣ, ягонагии суроға дар дохor шабака талаб карда мешавад. Дар versionи протоколи IPv4 суроғаи IP 4 byte ва дар versionи протоколи IPv6 суроғаи IP 16 byte аст. Одатан, суроғаи IP дар versionи протоколи IPv4 ҳамчун чаҳор адади даҳӣ бо арзишҳо аз 0 то 255 навишта мешавад, ки бо нуқта ҷудо карда шудааст, масалан, 192.168.0.3.

  2. Домен суроғаи вебсайт ё минтақаи мушаххасест, ки бар хилофи ҳама гуна номҳои системаи доменҳо номи худро дорад. Доменҳо метавонанд дараҷаи якум, дараҷаи дуюм, сатҳи сеюм ва ғайра бошанд. Одатан, домени дараҷаи аввал барои корбарони оддӣ барои бақайдгирӣ дастрас нест (мисолҳои доменҳои дараҷаи аввал “.ru”, “.com”, “.net” мебошанд). Одатан, доменҳои сатҳҳои сеюм ва баъдӣ зердоменҳо номида мешаванд.
    Хост компютер ё serverи мушаххасест, ки ба шабакаи маҳаллӣ ё глобалӣ пайваст аст. Хост дар муҳити хидматрасонии TCP/IP суроғаи беназир дорад (суроғаи IP).

  3. ГИРИФТАН, ПОСТ КАРДАН, ГУЗАРОНДАН, НАЗАР НАМУДАН, Options, Heads, PATCH, Trace, LINK, UNLINK, LINK.

  4. ГИРЕД ПОСТ САРДОР
    Мақомоти дархост Не Бихӯред Не
    Ҳайати вокуниш Бале Бале Не
    Кэшкунии натиҷаи дархост Бале Не Бале, сарлавҳаҳо
    Имкониятсизлик Бале Не Бале

    Усули GET барои дархост кардани мундариҷаи манбаи муайян истифода мешавад. Усули POST барои интиқоли маълумоти корбар ба манбаи муайян истифода мешавад. Усули HEAD маъмулан барои дарёфти метамаълумотҳо, тафтиши мавҷудияти манбаъ (вазияти URL) ва бубинед, ки оё он аз замони охирин дастрас шуданаш тағйир ёфтааст ё на. Усули HEAD ба усули GET монанд аст, ба истиснои он ки дар посухи server ягон бадан вуҷуд надорад. Усули GET versionи соддакардашудаи POST ҳисобида мешавад, зеро усули GET дархости пурраро дар назар надорад, танҳо URL-ро дар назар дорад.

  5. REST — это архитектурный стиль взаимодействия компонентов распределённого applications в сети. Термин был введён Роем Филдингом в 2000 году. Также им были введены требования, которым должно удовлетворять распределённое приложение, чтобы соответствовать архитектуре REST (такие applications ещё называют RESTful). Вот эти требования:

    1. Модель "Клиент-Сервер" (означает, что сеть должна состоять из клиента и serverа; server - это тот, кто обладает ресурсами, клиент - тот, который их запрашивает))
    2. Отсутствие состояния (означает, что ни клиент, ни server не отслеживают состояния друг друга)
    3. Кеширование (клиенты и промежуточные узлы могут кешировать результаты requestов; сооответственно, ответы serverа должны иметь явное or неявное обоmeaning, что они кешируемые or некешируемые)
    4. Единообразие интерфейса (означает, что между клиентами и serverами существует общий язык взаимодействия, который позволяет им быть заменяемыми or изменяемыми, без нарушения integrity системы):
      • Определение ресурса (означает, что каждый ресурс должны быть обозначен постоянным идентефикатором)
      • Управление ресурсами через представление (означает, что клиент хранит ресурс в виде его представления, и при желании изменения ресурса он отправляет serverу информацию о том, в Howом виде он хотел бы видеть этот ресурс; server же рассматривает этот How request How предложение, и сам решает, что делать ему с хранимым ресурсом)
      • Самодостаточные messages (каждое сообщение содержит достаточно информации, чтобы понять, How его обрабатывать)
      • Гипермедиа (означает, что клиенты изменяют состояние системы только через действия, которые динамически определены в гипермедиа на server)
      • Система слоёв (означает, что в системе может быть больше двух слоёв (клиент и server), и при этом каждый такой слой знает только о своих соседних слоях, и не знает об остальных слоях, и взаимодействует только с соседними слоями)
      • Код по требованию (означает, что функциональность клиента может быть расширения за счёт загрузки codeа с serverа в виде апплетов or сценариев)

      Удовлетворение этим требованиям позволяет добиться следующего:

      • Надёжность
      • Производительность
      • Масштабируемость
      • Прозрачность взаимодействия
      • Простота интерфейсов
      • Портативность компонентов
      • Лёгкость внесения изменений
      • Способность эволюционировать, приспосабливаясь к новым требованиям
  6. Он нужен для более удобной работы с датой и временем. Он позволяет работать с датой в рамках календаря, то есть позволяет прибавлять и отнимать дни от Howой-то конкретной даты, причём будут учитывать и високосные года. Кроме того, он позволяет представить время миллисекундах в удобном виде - год, месяц, день, часы, minutesы, секунды. Также есть много методов для установки и получения разных параметров даты и времени, например: день недели, день месяца, день в году, номер недели в месяце, номер недели в году.
  7. Для этого существует удобный класс SimpleDateFormat. Экземпляру этого класс можно передать шаблон представления даты, и тогда он в таком виде будет возвращать date (в формате строки String), либо считывать date (из строки String). Выглядит это всё следующим образом:

    Date date = new Date(); // получаем текущую date
    SimpleDateFormat formatter = new SimpleDateFormat("d-MM-yy HH:mm:ss"); //создаём экземпляр класса SimpleDateFormat
             								//и передаём ему шаблон представления даты и времени
    String dateAsString = formatter.format(date); //преобразуем date в строку заданного формата
    
    Date dateAfterConversion = formatter.parse(dateAsString); //преобразуем строку обратно в date
  8. URI расшифровывается How Uniform Resource Identifier и переводится How "унифицированный идентификатор ресурса". URI — это последовательность символов, идентифицирующая абстрактный or физический ресурс. URL расшифровывается How Uniform Resource Locator. То есть это некий унифицированный указатель на ресурс, однозначно определяющий его месторасположение. URL служит стандартизированным способом записи address ресурса в сети Интернет.
    Их отличия в том, что URI — это некоторый идентификатор ресурса, который позволяет этот ресурс How-то идентифицировать, а URL — это указатель на ресурс, он даёт информацию о том, где находится ресурс. Таким образом URL — это URI, который помимо идентификации ресурса, даёт информацию о его местонахождении.

  9. Сокеты — это связка IP-address + порт, позволяющая из внешней сети однозначно идентифицировать программу на компьютере or serverе. В Java для работы с сокетами есть два класса Socket и ServerSocket. Экземпляры первого класса играют роль клиента, экземпляры второго — роль serverа. Клиент может отправлять и принимать messages через сокет. Сервер же постоянно отслеживает requestы пользователей и отвечает на них.
    Для того, чтобы отправить данные через сокет, в классе Socket существует класс getOutnputStream(), возвращающий исходящий поток, с которым уже можно работать How обычно. Для приёма информацию нужно воспользоваться методом getInputStream(), который возвращает входящий поток. Дальше с этим потоком можно работать How с обычно потом ввода. Также стоит отметить, что при создании клиентского сокета (экземпляра класса Socket) в конструктор нужно передать ip-address serverа и порт, на котором он работает принимающая программа-server.
    При создании serverного сокета (экземпляра класса ServerSocket) нужно указывать только порт, через который будет работать программа. После этого вызывается метод accept(). Этот метод ожидание подключение клиента, а после этого возвращает экземпляр класса Socket, необходимый для взаимодействия с этим клиентом. Дальше работать идёт с экземпляром класса Socket, How в первом случае (в случае клиента).

  10. Тафовути асосӣ дар он аст, ки синфи URL барои кор бо сатри URL (таҳлor сатри URL) тарҳрезӣ шудааст, дар ҳоле ки Socket барои пайваст шудан ба serverи дурдаст ва ирсоли маълумот ба server ва/ё гирифтани маълумот аз server истифода мешавад (гарчанде ки бо истифода аз синфи URL шумо метавонед ба манбае, ки худи URL нишон медиҳад, дастрасӣ пайдо кунед; аммо ин мустақиман иҷро намешавад, балки тавассути an objectи синфи URLConnection). Инчунин, ба ибораи умумӣ, Socket барои иртибот бо server (барномаи дигар) ва URL барои дастрасӣ ба манбаъ (масалан, файл) истифода мешавад. Илова бар ин, URL ва URLConnection асосан ба кор бо HTTP нигаронида шудааст, дар ҳоле ки Socket метавонад бо ҳама гуна протоколҳо кор кунад.
Шарҳҳо
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION