Салом, Хабр.
В
Барои онҳое, ки манфиатдор дар он чӣ рӯй дод, идомаи зери набуред.
Бори дигар хотиррасон мекунам, ки омор ва рейтингҳо расмӣ нестанд, ман ягон маълумоти инсайдерӣ надорам. Инчунин кафолат дода намешавад, ки ман дар ҷое хато накардаам ё чизеро аз даст надодаам. Аммо ба ҳар ҳол, ман фикр мекунам, ки он ҷолиб шуд. Мо аввал бо код оғоз мекунем, онҳое, ки ба ин таваҷҷӯҳ надоранд, метавонанд қисмҳои аввалро гузаред.
Ҷамъоварии маълумот
Дар версияи якуми таҳлилгар танҳо шумораи диданҳо, шарҳҳо ва рейтинги мақолаҳо ба назар гирифта шудааст. Ин аллакай хуб аст, аммо он ба шумо имкон намедиҳад, ки дархостҳои мураккабтар кунед. Вақти он расидааст, ки қисматҳои мавзӯии сайтро таҳлил кунед, ин ба шумо имкон медиҳад, ки тадқиқоти ҷолибро анҷом диҳед, масалан, бубинед, ки маъруфияти бахши "C++" дар тӯли чанд сол чӣ гуна тағйир ёфтааст.
Таҳлилгари мақола такмил дода шуд, ҳоло он марказҳоеро, ки мақола ба онҳо тааллуқ дорад, инчунин лақаби муаллиф ва рейтинги ӯро бармегардонад (дар ин ҷо низ бисёр чизҳои ҷолибро кардан мумкин аст, аммо ин баъдтар меояд). Маълумот дар файли csv захира карда мешавад, ки чунин менамояд:
2018-12-18T12:43Z,https://habr.com/ru/post/433550/,"Мессенджер Slack — причины выбора, косяки при внедрении и особенности сервиса, облегчающие жизнь",votes:7,votesplus:8,votesmin:1,bookmarks:32,
views:8300,comments:10,user:ReDisque,karma:5,subscribers:2,hubs:productpm+soft
...
Мо рӯйхати марказҳои асосии мавзӯии сайтро мегирем.
def get_as_str(link: str) -> Str:
try:
r = requests.get(link)
return Str(r.text)
except Exception as e:
return Str("")
def get_hubs():
hubs = []
for p in range(1, 12):
page_html = get_as_str("https://habr.com/ru/hubs/page%d/" % p)
# page_html = get_as_str("https://habr.com/ru/hubs/geektimes/page%d/" % p) # Geektimes
# page_html = get_as_str("https://habr.com/ru/hubs/develop/page%d/" % p) # Develop
# page_html = get_as_str("https://habr.com/ru/hubs/admin/page%d" % p) # Admin
for hub in page_html.split("media-obj media-obj_hub"):
info = Str(hub).find_between('"https://habr.com/ru/hub', 'list-snippet__tags')
if "*</span>" in info:
hub_name = info.find_between('/', '/"')
if len(hub_name) > 0 and len(hub_name) < 32:
hubs.append(hub_name)
print(hubs)
Функсияи find_between ва синфи Str сатри байни ду тегро интихоб мекунад, ман онҳоро истифода кардам
Натиҷаи функсияи get_hubs рӯйхати хеле таъсирбахш аст, ки мо онро ҳамчун луғат захира мекунем. Ман махсусан рӯйхатро пурра пешниҳод мекунам, то шумо ҳаҷми онро тахмин кунед.
hubs_profile = {'infosecurity', 'programming', 'webdev', 'python', 'sys_admin', 'it-infrastructure', 'devops', 'javascript', 'open_source', 'network_technologies', 'gamedev', 'cpp', 'machine_learning', 'pm', 'hr_management', 'linux', 'analysis_design', 'ui', 'net', 'hi', 'maths', 'mobile_dev', 'productpm', 'win_dev', 'it_testing', 'dev_management', 'algorithms', 'go', 'php', 'csharp', 'nix', 'data_visualization', 'web_testing', 's_admin', 'crazydev', 'data_mining', 'bigdata', 'c', 'java', 'usability', 'instant_messaging', 'gtd', 'system_programming', 'ios_dev', 'oop', 'nginx', 'kubernetes', 'sql', '3d_graphics', 'css', 'geo', 'image_processing', 'controllers', 'game_design', 'html5', 'community_management', 'electronics', 'android_dev', 'crypto', 'netdev', 'cisconetworks', 'db_admins', 'funcprog', 'wireless', 'dwh', 'linux_dev', 'assembler', 'reactjs', 'sales', 'microservices', 'search_technologies', 'compilers', 'virtualization', 'client_side_optimization', 'distributed_systems', 'api', 'media_management', 'complete_code', 'typescript', 'postgresql', 'rust', 'agile', 'refactoring', 'parallel_programming', 'mssql', 'game_promotion', 'robo_dev', 'reverse-engineering', 'web_analytics', 'unity', 'symfony', 'build_automation', 'swift', 'raspberrypi', 'web_design', 'kotlin', 'debug', 'pay_system', 'apps_design', 'git', 'shells', 'laravel', 'mobile_testing', 'openstreetmap', 'lua', 'vs', 'yii', 'sport_programming', 'service_desk', 'itstandarts', 'nodejs', 'data_warehouse', 'ctf', 'erp', 'video', 'mobileanalytics', 'ipv6', 'virus', 'crm', 'backup', 'mesh_networking', 'cad_cam', 'patents', 'cloud_computing', 'growthhacking', 'iot_dev', 'server_side_optimization', 'latex', 'natural_language_processing', 'scala', 'unreal_engine', 'mongodb', 'delphi', 'industrial_control_system', 'r', 'fpga', 'oracle', 'arduino', 'magento', 'ruby', 'nosql', 'flutter', 'xml', 'apache', 'sveltejs', 'devmail', 'ecommerce_development', 'opendata', 'Hadoop', 'yandex_api', 'game_monetization', 'ror', 'graph_design', 'scada', 'mobile_monetization', 'sqlite', 'accessibility', 'saas', 'helpdesk', 'matlab', 'julia', 'aws', 'data_recovery', 'erlang', 'angular', 'osx_dev', 'dns', 'dart', 'vector_graphics', 'asp', 'domains', 'cvs', 'asterisk', 'iis', 'it_monetization', 'localization', 'objectivec', 'IPFS', 'jquery', 'lisp', 'arvrdev', 'powershell', 'd', 'conversion', 'animation', 'webgl', 'wordpress', 'elm', 'qt_software', 'google_api', 'groovy_grails', 'Sailfish_dev', 'Atlassian', 'desktop_environment', 'game_testing', 'mysql', 'ecm', 'cms', 'Xamarin', 'haskell', 'prototyping', 'sw', 'django', 'gradle', 'billing', 'tdd', 'openshift', 'canvas', 'map_api', 'vuejs', 'data_compression', 'tizen_dev', 'iptv', 'mono', 'labview', 'perl', 'AJAX', 'ms_access', 'gpgpu', 'infolust', 'microformats', 'facebook_api', 'vba', 'twitter_api', 'twisted', 'phalcon', 'joomla', 'action_script', 'flex', 'gtk', 'meteorjs', 'iconoskaz', 'cobol', 'cocoa', 'fortran', 'uml', 'codeigniter', 'prolog', 'mercurial', 'drupal', 'wp_dev', 'smallbasic', 'webassembly', 'cubrid', 'fido', 'bada_dev', 'cgi', 'extjs', 'zend_framework', 'typography', 'UEFI', 'geo_systems', 'vim', 'creative_commons', 'modx', 'derbyjs', 'xcode', 'greasemonkey', 'i2p', 'flash_platform', 'coffeescript', 'fsharp', 'clojure', 'puppet', 'forth', 'processing_lang', 'firebird', 'javame_dev', 'cakephp', 'google_cloud_vision_api', 'kohanaphp', 'elixirphoenix', 'eclipse', 'xslt', 'smalltalk', 'googlecloud', 'gae', 'mootools', 'emacs', 'flask', 'gwt', 'web_monetization', 'circuit-design', 'office365dev', 'haxe', 'doctrine', 'typo3', 'regex', 'solidity', 'brainfuck', 'sphinx', 'san', 'vk_api', 'ecommerce'}
Барои муқоиса, бахшҳои geektimes хоксортаранд:
hubs_gt = {'popular_science', 'history', 'soft', 'lifehacks', 'health', 'finance', 'artificial_intelligence', 'itcompanies', 'DIY', 'energy', 'transport', 'gadgets', 'social_networks', 'space', 'futurenow', 'it_bigraphy', 'antikvariat', 'games', 'hardware', 'learning_languages', 'urban', 'brain', 'internet_of_things', 'easyelectronics', 'cellular', 'physics', 'cryptocurrency', 'interviews', 'biotech', 'network_hardware', 'autogadgets', 'lasers', 'sound', 'home_automation', 'smartphones', 'statistics', 'robot', 'cpu', 'video_tech', 'Ecology', 'presentation', 'desktops', 'wearable_electronics', 'quantum', 'notebooks', 'cyberpunk', 'Peripheral', 'demoscene', 'copyright', 'astronomy', 'arvr', 'medgadgets', '3d-printers', 'Chemistry', 'storages', 'sci-fi', 'logic_games', 'office', 'tablets', 'displays', 'video_conferencing', 'videocards', 'photo', 'multicopters', 'supercomputers', 'telemedicine', 'cybersport', 'nano', 'crowdsourcing', 'infographics'}
Марказҳои боқимонда низ ҳамин тавр нигоҳ дошта шуданд. Ҳоло навиштани функсияе осон аст, ки натиҷаро баргардонад, оё мақола ба geektimes ё маркази профилӣ тааллуқ дорад.
def is_geektimes(hubs: List) -> bool:
return len(set(hubs) & hubs_gt) > 0
def is_geektimes_only(hubs: List) -> bool:
return is_geektimes(hubs) is True and is_profile(hubs) is False
def is_profile(hubs: List) -> bool:
return len(set(hubs) & hubs_profile) > 0
Чунин вазифаҳо барои бахшҳои дигар («рушд», «идоракунӣ» ва ғ.) иҷро карда шуданд.
Коркард
Вақти он расидааст, ки таҳлилро оғоз кунед. Мо маҷмӯи маълумотро бор мекунем ва маълумоти марказро коркард мекунем.
def to_list(s: str) -> List[str]:
# "user:popular_science+astronomy" => [popular_science, astronomy]
return s.split(':')[1].split('+')
def to_date(dt: datetime) -> datetime.date:
return dt.date()
df = pd.read_csv("habr_2019.csv", sep=',', encoding='utf-8', error_bad_lines=True, quotechar='"', comment='#')
dates = pd.to_datetime(df['datetime'], format='%Y-%m-%dT%H:%MZ')
dates += datetime.timedelta(hours=3)
df['date'] = dates.map(to_date, na_action=None)
hubs = df["hubs"].map(to_list, na_action=None)
df['hubs'] = hubs
df['is_profile'] = hubs.map(is_profile, na_action=None)
df['is_geektimes'] = hubs.map(is_geektimes, na_action=None)
df['is_geektimes_only'] = hubs.map(is_geektimes_only, na_action=None)
df['is_admin'] = hubs.map(is_admin, na_action=None)
df['is_develop'] = hubs.map(is_develop, na_action=None)
Акнун мо метавонем маълумотро аз рӯи рӯз гурӯҳбандӣ кунем ва шумораи нашрияҳоро барои марказҳои гуногун нишон диҳем.
g = df.groupby(['date'])
days_count = g.size().reset_index(name='counts')
year_days = days_count['date'].values
grouped = g.sum().reset_index()
profile_per_day_avg = grouped['is_profile'].rolling(window=20, min_periods=1).mean()
geektimes_per_day_avg = grouped['is_geektimes'].rolling(window=20, min_periods=1).mean()
geektimesonly_per_day_avg = grouped['is_geektimes_only'].rolling(window=20, min_periods=1).mean()
admin_per_day_avg = grouped['is_admin'].rolling(window=20, min_periods=1).mean()
develop_per_day_avg = grouped['is_develop'].rolling(window=20, min_periods=1).mean()
Мо шумораи мақолаҳои нашршударо бо истифода аз Matplotlib нишон медиҳем:
Ман мақолаҳои "geektimes" ва "geektimes танҳо" -ро дар диаграмма тақсим кардам, зеро Мақола метавонад дар як вақт ба ҳарду бахш тааллуқ дошта бошад (масалан, "DIY" + "микроконтроллерҳо" + "C++"). Ман таъиноти "профил" -ро барои таъкид кардани мақолаҳои профилӣ дар сайт истифода кардам, гарчанде ки истилоҳи профили англисӣ барои ин комилан дуруст нест.
Дар қисми қаблӣ мо дар бораи "эффектҳои geektimes" пурсидем, ки бо тағир додани қоидаҳои пардохт барои мақолаҳо барои Geektimes аз тобистони имсол оғоз мешавад. Биёед мақолаҳои geektimes-ро алоҳида намоиш диҳем:
df_gt = df[(df['is_geektimes_only'] == True)]
group_gt = df_gt.groupby(['date'])
days_count_gt = group_gt.size().reset_index(name='counts')
grouped = group_gt.sum().reset_index()
year_days_gt = days_count_gt['date'].values
view_gt_per_day_avg = grouped['views'].rolling(window=20, min_periods=1).mean()
Натиҷа ҷолиб аст. Таносуби тахминии назари мақолаҳои Geektimes ба шумораи умумӣ тақрибан 1:5 аст. Аммо дар ҳоле ки шумораи умумии тамошобинон ба таври қобили мулоҳиза тағйир меёфт, тамошои матолиби “тафреҳӣ” тақрибан дар ҳамон сатҳ боқӣ мондааст.
Шумо инчунин метавонед аҳамият диҳед, ки шумораи умумии дидани мақолаҳо дар бахши "geektimes" пас аз тағир додани қоидаҳо то ҳол коҳиш ёфтааст, аммо "бо чашм" на бештар аз 5% арзишҳои умумӣ.
Ҷолиб аст, ки ба шумораи миёнаи тамошои як мақола нигаред:
Барои мақолаҳои "фароғатӣ" он тақрибан 40% аз ҳисоби миёна аст. Ин шояд тааҷҷубовар нест. Нокомӣ дар аввали моҳи апрел барои ман норавшан аст, шояд ҳамин тавр бошад, ё ин як навъ хатогии таҳлил аст ё шояд яке аз муаллифони Geektimes ба таътил рафта бошад;).
Дар омади гап, график боз ду қуллаи назарраси шумораи тамошои мақолаҳоро нишон медиҳад - ҷашнҳои Соли нав ва Май.
Хабҳо
Биёед ба таҳлили ваъдашудаи марказҳо гузарем. Биёед 20 маркази беҳтаринро аз рӯи шумораи диданҳо номбар кунем:
hubs_info = []
for hub_name in hubs_all:
mask = df['hubs'].apply(lambda x: hub_name in x)
df_hub = df[mask]
count, views = df_hub.shape[0], df_hub['views'].sum()
hubs_info.append((hub_name, count, views))
# Draw hubs
hubs_top = sorted(hubs_info, key=lambda v: v[2], reverse=True)[:20]
top_views = list(map(lambda x: x[2], hubs_top))
top_names = list(map(lambda x: x[0], hubs_top))
plt.rcParams["figure.figsize"] = (8, 6)
plt.bar(range(0, len(top_views)), top_views)
plt.xticks(range(0, len(top_names)), top_names, rotation=90)
plt.ticklabel_format(style='plain', axis='y')
plt.tight_layout()
plt.show()
Натиҷа:
Тааҷҷубовар аст, ки маркази маъмултарин аз нигоҳи назарҳо "Амнияти иттилоотӣ" буд;
Antitop Gtk ва Cocoa-ро ишғол мекунад.
Ман ба шумо сирро мегӯям, марказҳои болоро низ дидан мумкин аст
Рейтинг
Ва ниҳоят, рейтинги ваъдашуда. Бо истифода аз маълумоти таҳлили марказ, мо метавонем мақолаҳои маъмултаринро барои марказҳои маъмултарин дар соли 2019 намоиш диҳем.
Амнияти иттилоот
Чӣ тавр ман дар Сбербанк як сол кор накардам 304000 тамошо, 599 шарҳ, рейтинг +457.0/-14.0Лампаҳои интеллектуалии партофташуда манбаи пурарзиши маълумоти шахсӣ мебошанд 232000 тамошо, 147 шарҳ, рейтинг +75.0/-11.0Фиребгарон ва имзоҳои рақамӣ - ҳама чиз хеле бад аст 176000 тамошо, 778 шарҳ, рейтинг +356.0/-0.0Чӣ тавр Мегафон дар обунаҳои мобилӣ сӯхтааст 166000 тамошо, 676 шарҳ, рейтинг +624.0/-2.0Ҳакерии VK, аутентификатсияи ду-омилӣ наҷот намедиҳад 148000 тамошо, 332 шарҳ, рейтинг +124.0/-17.0Браузер ба рафик майор чй тавр ёрй мерасонад 132000 тамошо, 321 шарҳ, рейтинг +246.0/-19.0Бузургтарин партов дар таърих: 2,7 миллиард ҳисоб, ки 773 миллионаш беназир аст 123000 тамошо, 154 шарҳ, рейтинг +86.0/-5.0Азизам, мо интернетро мекушем 121000 тамошо, 933 шарҳ, рейтинг +392.0/-83.0"Мӯҳтавои мобилӣ" ройгон, бидуни SMS ё сабти ном аст. Тафсилоти қаллобӣ аз Мегафон 114000 тамошо, 478 шарҳ, рейтинг +488.0/-8.0Сканери порт дар ҳисоби шахсии Rostelecom 111000 тамошо, 194 шарҳ, рейтинг +300.0/-8.0
Барномасозӣ
Дар бораи як бача 167000 тамошо, 249 шарҳ, рейтинг +239.0/-33.0Чӣ қадаре ки шумо OOP-ро зудтар фаромӯш кунед, барои шумо ва барномаҳои шумо ҳамон қадар беҳтар аст 129000 тамошо, 1271 шарҳ, рейтинг +131.0/-63.0Чаро таҳиягарони калон наметавонанд кор пайдо кунанд 119000 тамошо, 901 шарҳ, рейтинг +151.0/-14.0Оё ин ҷо барои пиронсолон нест? Барномасозӣ баъд аз сию панҷ 116000 тамошо, 649 шарҳ, рейтинг +222.0/-16.0Забонҳои нави барномасозӣ робитаи моро бо воқеият оромона мекушанд 106000 тамошо, 764 шарҳ, рейтинг +164.0/-52.0Он чизе ки ман бо роҳи душвор омӯхтам (зиёда аз 30 сол дар таҳияи нармафзор) 101000 тамошо, 128 шарҳ, рейтинг +178.0/-9.0Нодиртарин ва гаронтарин забонҳои барномасозӣ 82900 тамошо, 119 шарҳ, рейтинг +38.0/-10.0Курси лексияҳо оид ба JavaScript ва Node.js дар KPI 80300 тамошо, 14 шарҳ, рейтинг +34.0/-2.0Истилоҳоти IT бо истифода аз мисоли раванди парвариши картошка 78000 тамошо, 86 шарҳ, рейтинг +84.0/-14.0256 сатри бараҳна C++: навиштани ray tracer аз сифр дар тӯли чанд соат 77600 тамошо, 124 шарҳ, рейтинг +241.0/-0.0
Илми оммавӣ
Он чизе ки конструктор тамоку мекашид: силоҳҳои оташфишони ғайриоддӣ 236000 тамошо, 123 шарҳ, рейтинг +119.0/-9.0Олимон қадимтарин устухонҳои зиндаи рӯи заминро пайдо карданд 234000 тамошо, 212 шарҳ, рейтинг +82.0/-14.0Серили телевизионии «Чернобыль»: тамошо кунед ва фикр кунед 173000 тамошо, 803 шарҳ, рейтинг +164.0/-25.0Як навраси 12-сола дар лабораторияи хонааш реаксияи синтези ядроиро анҷом дод. 145000 тамошо, 280 шарҳ, рейтинг +126.0/-29.0Достони садбарги хӯлаи ва Кренкаи афтода 134000 тамошо, 244 шарҳ, рейтинг +217.0/-1.0Онро калонтар кунед! Баланд бардоштани ҳалли муосир 134000 тамошо, 235 шарҳ, рейтинг +377.0/-1.0Нармафзори Boeing 737 Max аз ҷониби аутсорсерҳо навишта шудааст, ки дар як соат 9 доллар кор мекунанд. 126000 тамошо, 560 шарҳ, рейтинг +153.0/-6.0Асаб нашавед, саросема нашавед, халал нарасонед: достони фоҷиа 121000 тамошо, 384 шарҳ, рейтинг +242.0/-4.0Математикҳо роҳи беҳтарини зарб задани рақамҳоро кашф карданд 108000 тамошо, 222 шарҳ, рейтинг +173.0/-10.0Забонҳои нави барномасозӣ робитаи моро бо воқеият оромона мекушанд 106000 тамошо, 764 шарҳ, рейтинг +164.0/-52.0
Карера
Чӣ тавр ман дар Сбербанк як сол кор накардам 304000 тамошо, 599 шарҳ, рейтинг +457.0/-14.0Ман бо баррасиҳои коди худ ҳаёти таҳиягаронро хароб мекунам ва бубахшед 187000 тамошо, 21 шарҳ, рейтинг +37.0/-3.0Подшоҳи рушд 179000 тамошо, 668 шарҳ, рейтинг +315.0/-60.0Дар бораи як бача 167000 тамошо, 249 шарҳ, рейтинг +239.0/-33.0Дар 22 ба нафақа мебарояд 158000 тамошо, 927 шарҳ, рейтинг +259.0/-100.0Чӣ тавр дар ҷои коратон лампаи барқро бе кор кардан иваз кардан мумкин аст? 139000 тамошо, 762 шарҳ, рейтинг +200.0/-20.0Инноватсия ба забони русӣ 128000 тамошо, 612 шарҳ, рейтинг +480.0/-33.0Чаро таҳиягарони калон наметавонанд кор пайдо кунанд 119000 тамошо, 901 шарҳ, рейтинг +151.0/-14.0Кормандони "сӯхташуда": оё роҳи халосӣ ҳаст? 117000 тамошо, 398 шарҳ, рейтинг +210.0/-14.0Оё ин ҷо барои пиронсолон нест? Барномасозӣ баъд аз сию панҷ 116000 тамошо, 649 шарҳ, рейтинг +222.0/-16.0
Қонунгузорӣ дар соҳаи IT
Фиребгарон ва имзоҳои рақамӣ - ҳама чиз хеле бад аст 176000 тамошо, 778 шарҳ, рейтинг +356.0/-0.0Чӣ тавр Мегафон дар обунаҳои мобилӣ сӯхтааст 166000 тамошо, 676 шарҳ, рейтинг +624.0/-2.0Инноватсия ба забони русӣ 128000 тамошо, 612 шарҳ, рейтинг +480.0/-33.0"Мӯҳтавои мобилӣ" ройгон, бидуни SMS ё сабти ном аст. Тафсилоти қаллобӣ аз Мегафон 114000 тамошо, 478 шарҳ, рейтинг +488.0/-8.0Чӣ тавр мақомоти Қазоқистон кӯшиши пӯшонидани нокомии худро дар иҷрои шаҳодатнома доранд 111000 тамошо, 77 шарҳ, рейтинг +122.0/-14.0Чӣ тавр Protonmail дар Русия баста мешавад 102000 тамошо, 398 шарҳ, рейтинг +418.0/-7.0Қонун дар бораи ҷудо кардани Рунетро Думаи давлатӣ дар се хониш қабул кард 88200 тамошо, 878 шарҳ, рейтинг +73.0/-18.0Чӣ тавр барномасоз бонкро интихоб кард ва шартномаҳоро хонд 87200 тамошо, 611 шарҳ, рейтинг +166.0/-9.0Вазорати телекоммуникатсия ва коммуникатсияҳои оммавӣ лоиҳаи қонунро дар бораи ҷудо кардани RuNet тасдиқ кард 83600 тамошо, 364 шарҳ, рейтинг +79.0/-9.0Ҷавоби муфассал ба шарҳ, инчунин каме дар бораи ҳаёти провайдерҳо дар Федератсияи Русия 74700 тамошо, 389 шарҳ, рейтинг +290.0/-1.0
Таҳияи веб
Оё ин ҷо барои пиронсолон нест? Барномасозӣ баъд аз сию панҷ 116000 тамошо, 649 шарҳ, рейтинг +222.0/-16.0Чӣ тавр сохтани вебсайтҳо дар соли 2019 110000 тамошо, 278 шарҳ, рейтинг +233.0/-11.0Омӯзиши Docker Қисми 1: Асосҳо 91300 тамошо, 24 шарҳ, рейтинг +52.0/-10.0Курси лексияҳо оид ба JavaScript ва Node.js дар KPI 80300 тамошо, 14 шарҳ, рейтинг +34.0/-2.0Тренер Вася ва ҳикояҳои ӯ дар бораи қобилияти API 68900 тамошо, 160 шарҳ, рейтинг +216.0/-3.0Фаҳмиши пайвастшавӣ вайрон шудааст. Ин бешубҳа як чорроҳаи доираҳо нест, ростқавлона 65900 тамошо, 223 шарҳ, рейтинг +138.0/-41.0Чаро шумо набояд вақти худро барои сохтани вебсайтҳои мавзӯӣ сарф кунед 62700 тамошо, 243 шарҳ, рейтинг +179.0/-13.0Аз сифр сохтани веб-барномаи муосир 62200 тамошо, 122 шарҳ, рейтинг +56.0/-8.0Рӯзи сиёҳ барои Vue.js 60800 тамошо, 133 шарҳ, рейтинг +77.0/-6.0Чаро таҳияи веби муосир ин қадар мураккаб аст? Қисми 1 57700 тамошо, 319 шарҳ, рейтинг +101.0/-6.0
GTK
Ва дар охир, то касе хафа нашавад, ман рейтинги маркази камтар боздидшуда "gtk" -ро медиҳам. Дар давоми як сол он нашр шуд як Мақола, ки он низ "ба таври худкор" сатри аввали рейтингро ишғол мекунад.
Истифодаи GtkApplication. librsvg хусусиятҳои пешниҳоди 1700 тамошо, 9 шарҳ, рейтинг +9.0/-1.0
хулоса
Хулоса нахоҳад буд. Хониши ҳама муборак.
Манбаъ: will.com