Pull to refresh

Comments 11

поскольку сам Go является C-подобным

Точно Си? Я его когда первый раз увидел, сразу Оберон вспомнил.

За это время вы научитесь:

  1. Писать простые SQL-запросы к базам данных.


А во входном тесте умение "простые SQL-запросы к базам данных" уже требуется кстати.

Учиться работать с БД в рамках языка программирования с того, чтобы учиться работать с БД в целом, ИМХО плохая затея. Ибо человек такое создание, что склонно терять лес за деревьями, а реляционная логика, понятие множеств и действий над ними, на которых она строится и общая логика работы СУБД даст достаточно деревьев, чтобы за ними напрочь, месяцев на 6 минимум, полностью потерять GO из виду =))))) Эту часть квеста лучше проходить заранее....

А в рамках топика, о ALL, а никто не порекомендует обновляемый, адекватный, online справочник по синтаксису и стандартной библиотеке Go на русском языке.

(уже оставил в обратной связи) однако сделаю это и тут может создаст обсуждение.

Внимание спойлеры на тест курса.

Вопрос 1 - неоднозначность

RFC 7231 §4.3.1 states that a body "has no defined semantics", but that's not to say it is forbidden. If you attach a body to the request and what your server/app makes out of it is up to you.

Вопрос 2 - неоднозначность

Being valid ECMAScript doesn't necessarily mean a document is valid JSON - JSON is generally defined in RFC 4627, and that spec does not allow the trailing comma.

А можете вторую пояснить? Вроде ответ с запятой в конце корректно неправильный судя по вашей же выдержке.

ECMAScript != RFC 4627. RFC (spec) does not allow the trailing comma.

example (python)

In [57]: import json

In [58]: json.loads('''{"a": 1, "b": "2", }''')
---------------------------------------------------------------------------
JSONDecodeError                           Traceback (most recent call last)
<ipython-input-58-7660b1a33870> in <module>
----> 1 json.loads('''{"a": 1, "b": "2", }''')

/usr/local/Cellar/python@3.9/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/json/__init__.py in loads(s, cls, object_hook, parse_float, parse_int, parse_constant, object_pairs_hook, **kw)
    344             parse_int is None and parse_float is None and
    345             parse_constant is None and object_pairs_hook is None and not kw):
--> 346         return _default_decoder.decode(s)
    347     if cls is None:
    348         cls = JSONDecoder

/usr/local/Cellar/python@3.9/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/json/decoder.py in decode(self, s, _w)
    335 
    336         """
--> 337         obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    338         end = _w(s, end).end()
    339         if end != len(s):

/usr/local/Cellar/python@3.9/3.9.13_1/Frameworks/Python.framework/Versions/3.9/lib/python3.9/json/decoder.py in raw_decode(self, s, idx)
    351         """
    352         try:
--> 353             obj, end = self.scan_once(s, idx)
    354         except StopIteration as err:
    355             raise JSONDecodeError("Expecting value", s, err.value) from None

JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 20 (char 19)

In [59]: json.loads('''{"a": 1, "b": "2"}''')
Out[59]: {'a': 1, 'b': '2'}

А можно ещё раз пояснить? Да, ответ неправильный, но он и по скину неправильный. Что не так?

RFC 7231 §4.3.1 states that a body "has no defined semantics", but that's not to say it is forbidden. If you attach a body to the request and what your server/app makes out of it is up to you.

Кстати да, мне раз доводилось работать с API, в котором был GET запрос с body. Было забавно наблюдать, как одни пакеты могут с таким вариантом работать, а другие ломаются.

Там нет проверки решений, можно только готовый ответ посмотреть. Бесполезная фигня. На Степике курс лучше, хоть и с заморочками.

Sign up to leave a comment.