возможно у вас сайт за revers proxy?
А для того что бы составить полный список возможных заголовков, я взял список бесплатных прокси(15к штук), прогнал тесты с логирование отличающихся заголовков, потом выбрал те которые я посчитал относятся к прокси.
Пример как раз был о том что к законам подходят очень формально, для статистики и звездочек на погонах. Парень не был каким то ярым активистом и пропагандистом. Он даже не загружал картинку, он ее просто репостнул. В нашем случае это может быть обвинение в реверс инженеринге протокола общения сайта, хотя он и не шифрован. И для меня хоть пример с парнем, хоть вот этот пример являются не логичными.
Даже если я каким либо чудом получил это разрешение, что мешает им изменить свое решение в любой момент. А тем более после того что они узнают что я не просто frontend сделал, но и бота прикрутил.
Есть ли какие либо способы без взаимодействия с администрацией ресурса?
А зачем у нас в стране дают реальные сроки за репост картинок вконтакте? Выслужиться, статистика, борьба с неправыми в интернете... А по поводу доступа я собираюсь использовать пул проксей.
Я правильно понимаю, что работа с api без попытки его взлома допускается любыми методами. Даже напрямую, хотя это и не заявлялось владельцем сайта. Будь то frontend или бот - владелец может только технически попытаться мне испортить жизнь?
Просто я боюсь что потрачу силы впустую на техническую реализацию фронтенда и бота(собирающего статистику и выполняющего какую либо автоматизацию). Монетизировав эти доп возможности. А затем получив требования вырубить это все нафиг и угрозы подать в суд за какие либо нарушения. Так же опасаюсь того что это гос сервис, а я его собираюсь монетизировать.
Можно подробнее? Что значит теоретическое да? По слухам система стоила 500кк. Там большие дяди пилят большие деньги. Я в свою очередь хотел взять конкретный компонент и сделать свою версию. С доп сервисом и монетизацией. Я обычный разработчик из глубинки далекий от бизнеса и не имеющий каких либо "важных" связей.
Во 1. Это не новости или блог. Это сервис и на телефонах он работает кое как. Люди хотят им пользоваться. Тут выбор либо довериться либо не иметь доступа с телефона. Во 2 среди простых людей для которых интернет это яндекс, вконтакт и мэйлру не стоит вопроса доверия, они даже не знают о каких либо проблемах. В 3 вопросы довольно конкретные и то что вы пишите чистой воды оффтоп.
На самом деле уровни указывают на степень отвязанности языка от воздействия с аппаратурой, проще представить себе, например, корабль: в машинном отделение (на самом нижнем уровне корабля) рабочий непосредственно взаимодействует с механизмами, подкидывает уголь в топку и следит за всеми показателями датчиков давления. В то же время, капитан, находящийся на этаже выше (более высокий уровень) задаёт лишь приказы "полный вперед", "полный назад", "вправо", "влево". Капитану не требуется работать с углём и следить за давлением в паровом котле, он отвечает за то куда и на какой скорости корабль движется. Если брать ещё более высокий уровень, то на палубу выше находятся пассажиры, именно они купив билет отдают тем самым приказ кораблю "плыть в Москву", при этом им не надо даже задумываться как корабль функционирует. Тот же самый принцип лежит и в языках программирования, чем ниже уровень, тем ближе программист оперирует с аппаратурой, чем выше, тем больше программист оперирует с абстрактными понятиями и более глобальными задачами.
Так вот вы очень сильно зациклены на C++. Он может использоваться как язык низкого уровня так и высокого. В современных реалиях тот же WinApi является довольно низкоуровневой прослойкой. В то время как Qt, MFC более высокоуровневые вещи.
По поводу оптимизации, из вашего сообщение создается впечатление что вы только языком чесать мастер, т.к. ставить под сомнение сложность запуска здоровых высоконагруженных систем это бред. С чего тогда специалистам в данной области много платят? А с того что никакие "железячные" знания не помогут, если ты не будешь знать какой SQL запрос написать в том или ином случае. Разные запросы могут требовать больше памяти или больше процессорного времени или больше чтения\записи жесткого диска. Без глубоких знаний БД ты не будешь знать как и что писать. Так же и в обратную сферу. Специалист по БД не разработает для тебя прошифку для микроконтроллера и тд.
В завершение подумайте о том почему в вакансиях пишут обычно "требуется опыт в данной(!) сфере N лет", а не "требуется опыт в низкоуровневом программирование N лет". Все мне надоело объяснять почему мягкое это мягкое, а не соленое и почему одно не применимо к другому.
>По какому принципу вы его отнесли к низкоуровневым? Потому что на нем неудобно писать приложения?
Полный бред. Я не хочу глубоко расписывать все это, вкратце все дело в абстракциях. Остальное вы можете понять отсюда: https://en.wikipedia.org/wiki/Low-level_programmin... https://en.wikipedia.org/wiki/High-level_programmi...
>Я вот предлагаю считать более глубокими познания более низкоуровневого
Программирование железа, умение писать драйвера не сделает из тебя хорошего архитектора корпоративных решений или веб программиста. Я тоже знаю асм, я тоже умею реверсить, но у меня почему то от этого не появляется глубоких познаний например в высоко нагруженных решениях. Я не смогу запустить базу данных на огромных нагрузках и тд. Для этого нужны глубокие познания именно в этой области. Да я могу сделать корпоративный сайт или CRM, это я считаю средненькими свои знаниями в веб разработке.
VZVZ: по мимо гигантского самомнения у вас есть гигантские проблемы в терминологии. Языки программирования бывают низкоуровневые(asm,c,c++) и высокоуровневые(java,c#,php), а познания бывают поверхостные и глубокие. Например: все мы знаем, что земля вращается вокруг солнца. Только вот у домохозяки знания более поверхостные в отличие от профессора астрофизики(у него глубокие познания в этой области). Как вы можете понять это не относится к языку программирования совершенно. Так же и с веб разработкой. Можно иметь глубокие знания в ней, а можно иметь поверхостные.
Хотя я наверное погорячился с gemini. Возможно вам не нужен такой динамический монстр. Или в принципе не нужен десктоп. Тогда стоит искать крупные наработки(проекты) по конкретно вашей специфике и изучать их.
Сложно назвать какой то один источник который включал бы все. Общие рекомендации - изучить конкретные шаблоны(паттерны) и терминологию. Например Messenger в MVVM Light, EventAggregator в Caliburn Micro, PubSub в Prism. Немного отличаются, а по сути одно и тоже. Стоит изучить разные MVVM фреймворки и принципы лежащие за ними. Выбрать IoC-контейнер по вкусу (www.palmmedia.de/blog/2011/8/30/ioc-container-benc... и использовать, они отличаются скоростью, функциональностью и тд. Советую не использовать шаблон ServiceLocator, лучше делайте инъекции через конструктор, так сразу видно что нужно данному объекту. После этого разобрать как и почему именно так работает вот этот проект https://github.com/tgjones/gemini . Ну и в конце написать свой аналог с использование выбранного вами MVVM фреймворка и IoC-контейнера. Я написал две версии в свое время(Catel, Caliburn.Micro), когда что то не работало я качал исходники используемых библиотек, собирал и делал отладку своей надстройки со сторонними библиотеками, это давало понятие как оно все устроено внутри.