JavaRush /جاوا بلاگ /Random-SD /ليول 40. ليول جي موضوع تي انٽرويو سوالن جا جواب
lichMax
سطح
Санкт-Петербург

ليول 40. ليول جي موضوع تي انٽرويو سوالن جا جواب

گروپ ۾ شايع ٿيل
ليول 40. ليول جي موضوع تي انٽرويو سوالن جا جواب - 1دراصل، هيٺيان سوال هن سطح تي هئا:
  1. هڪ IP پتو ڇا آهي؟
  2. ميزبان ۽ ڊومين جي وچ ۾ ڇا فرق آهي؟
  3. ڪھڙا HTTP طريقا توھان ڄاڻو ٿا؟
  4. GET، POST ۽ HEAD طريقن جي وچ ۾ ڇا فرق آهي؟
  5. REST ڇا آهي؟
  6. جاوا ۾ ڪئلينڊر ڪلاس جي ضرورت ڇو آهي؟
  7. ڪيئن بدلجي تاريخ کي جاوا ۾ گهربل فارميٽ ۾؟
  8. URI ۽ URL جي وچ ۾ ڇا فرق آهي؟
  9. ساکٽ ڇا آهن؟
  10. ساکٽ ۽ URL طبقن جي وچ ۾ فرق؟
۽ هتي منهنجا جواب آهن:
  1. هڪ IP پتو ڪمپيوٽر نيٽ ورڪ ۾ هڪ نوڊ جو هڪ منفرد نيٽ ورڪ پتو آهي جيڪو TCP/IP پروٽوڪول اسٽيڪ تي ٺهيل آهي. انٽرنيٽ کي عالمي سطح تي منفرد پتي جي ضرورت آهي؛ مقامي نيٽ ورڪ تي ڪم ڪرڻ جي صورت ۾، نيٽ ورڪ جي اندر پتي جي انفراديت جي ضرورت آهي. IPv4 پروٽوڪول ورزن ۾، IP پتو 4 بائيٽ ڊگهو آهي، ۽ IPv6 پروٽوڪول ورزن ۾، IP پتو 16 بائيٽ ڊگهو آهي. عام طور تي، IPv4 پروٽوڪول ورزن ۾ هڪ IP پتو 0 کان 255 جي قدرن سان چار ڊيسيمل نمبرن جي طور تي لکيو ويندو آهي، هڪ ڊٽ سان الڳ ٿيل، مثال طور، 192.168.0.3.

  2. ڊومين هڪ ويب سائيٽ ايڊريس يا هڪ مخصوص زون آهي جنهن جو پنهنجو نالو آهي، ڊومين نالو سسٽم ۾ ڪنهن ٻئي نالي جي برعڪس. ڊومينس ٿي سگھي ٿو پهرين سطح، ٻي سطح، ٽيون سطح، وغيره. عام طور تي، پهرين سطح جو ڊومين عام استعمال ڪندڙن لاءِ رجسٽريشن لاءِ دستياب ناهي (پهرين سطح جي ڊومين جا مثال آهن “.ru”، “.com”، “.net”). عام طور تي، ٽئين ۽ ايندڙ سطحن جي ڊومينز کي ذيلي ڊومينز سڏيو ويندو آهي.
    ميزبان هڪ مخصوص ڪمپيوٽر يا سرور آهي جيڪو مقامي يا عالمي نيٽ ورڪ سان ڳنڍيل آهي. ميزبان کي TCP/IP سروس ماحول ۾ هڪ منفرد پتو آهي (IP پتو).

  3. حاصل ڪريو، پوسٽ ڪريو، وجھو، ختم ڪريو، اختيارات، سر، پيچ، پيچ، ڳنڍڻ، ڳنڍڻ، ڳنڍڻ، ڳنڍڻ.

  4. حاصل ڪريو پوسٽ هيڊ
    درخواست جسم نه کائو نه
    جوابي جسم ها ها نه
    درخواست جي نتيجن کي ڪيش ڪرڻ ها نه ها، هيڊ لائنون
    بي ايماني ها نه ها

    GET طريقو استعمال ڪيو ويندو آھي ھڪڙي مخصوص وسيلن جي مواد جي درخواست ڪرڻ لاء. پوسٽ جو طريقو استعمال ڪيو ويندو آهي صارف جي ڊيٽا کي مخصوص وسيلن ڏانهن منتقل ڪرڻ لاء. HEAD طريقو عام طور تي ميٽا ڊيٽا کي حاصل ڪرڻ لاءِ استعمال ڪيو ويندو آهي، هڪ وسيلن جي موجودگي کي چيڪ ڪريو (URL جي تصديق)، ۽ ڏسو ته ڇا اهو تبديل ٿي چڪو آهي جڏهن کان ان کي آخري ڀيرو پهچايو ويو هو. هيڊ طريقو GET طريقي سان ملندڙ جلندڙ آهي، سواء ان جي سرور جي جواب ۾ ڪو به جسم ناهي. GET طريقو POST جو هڪ آسان نسخو سمجهي وڃي ٿو، ڇاڪاڻ ته GET طريقو مڪمل درخواست جو مطلب نه ٿو ڏئي، صرف هڪ URL جيئن.

  5. REST هڪ آرڪيٽيڪچرل اسلوب آهي ته ڪيئن ورهايل ايپليڪيشن جا حصا نيٽ ورڪ تي لهه وچڙ ۾ اچن ٿا. اهو اصطلاح رائو فيلڊنگ پاران 2000 ۾ ٺهرايو ويو. هن اهي گهرجون پڻ متعارف ڪرايون جيڪي ورهايل ايپليڪيشن کي لازمي طور تي پورا ڪرڻ گهرجن REST فن تعمير (اهڙين ايپليڪيشنن کي RESTful پڻ سڏيو ويندو آهي). اهي گهرجون آهن:

    1. ڪلائنٽ-سرور ماڊل (مطلب ته نيٽ ورڪ هڪ ڪلائنٽ ۽ سرور تي مشتمل هجڻ گهرجي؛ سرور اهو آهي جنهن وٽ وسيلا آهن، ڪلائنٽ اهو آهي جيڪو انهن جي درخواست ڪري ٿو))
    2. بي رياست (مطلب نه ته ڪلائنٽ ۽ نه ئي سرور هڪ ٻئي جي حالت تي نظر رکي ٿو)
    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-строкой (парсинг URL-строки), а Socket используется для соединения с удалённым serverом и отправки информации на server и/or приёма информации от serverа (хотя, используя класс URL, можно получить доступ к ресурсу, на который указывает сам URL; но делается это не напрямую, а через an object класса URLConnection). Также, если смотреть в общем, то Socket используется для связи с serverом (другой программой), а URL — для доступа к ресурсу (например, к файлу). Кроме того, URL и URLConnection ориентированы в основном на работу с HTTP, тогда How Socket может работать с любыми протоколами.
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION