ToCode
Kanalga Telegramโda oโtish
ืืืคืื ืงืฆืจืื ืืืชืื ืชืื ืืืช ืื ืื ืคืจืง
Ko'proq ko'rsatish1 420
Obunachilar
Ma'lumot yo'q24 soatlar
+37 kunlar
-430 kunlar
Postlar arxiv
1 420
"keys_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/teams",
"hooks_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/hooks",
"issue_events_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/issues/events{/number}",
"events_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/events",
"assignees_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/assignees{/user}",
"branches_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/branches{/branch}",
"tags_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/tags",
"blobs_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/statuses/{sha}",
"languages_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/languages",
"stargazers_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/stargazers",
"contributors_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/contributors",
"subscribers_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/subscribers",
"subscription_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/subscription",
"commits_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/contents/{+path}",
"compare_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/merges",
"archive_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/downloads",
"issues_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/issues{/number}",
"pulls_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/pulls{/number}",
"milestones_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/milestones{/number}",
"notifications_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/labels{/name}",
"releases_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/releases{/id}",
"deployments_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/deployments",
"created_at": "2013-12-13T15:39:56Z",
"updated_at": "2014-09-09T14:50:45Z",
"pushed_at": "2013-12-13T15:44:15Z",
"git_url": "git://github.com/ynonp/2013-Advent-Staging.git",
"ssh_url": "git@github.com:ynonp/2013-Advent-Staging.git",
"clone_url": "https://github.com/ynonp/2013-Advent-Staging.git",
"svn_url": "https://github.com/ynonp/2013-Advent-Staging",
"homepage": null,
"size": 1777,
"stargazers_count": 0,
"watchers_count": 0,
"language": "Perl",
"has_issues": false,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": false,
"has_discussions": false,
"forks_count": 0,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 0,
"license": null,1 420
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi | .USD,.EUR'
{
"code": "USD",
"symbol": "$",
"rate": "26,938.2648",
"description": "United States Dollar",
"rate_float": 26938.2648
}
{
"code": "EUR",
"symbol": "€",
"rate": "26,241.8029",
"description": "Euro",
"rate_float": 26241.8029
}
ืืฉืืื ืื ืื ืงืืืื ื - ืื ืื ืืืืืงื ืืืื, ืืื ืื ืื ืื ืืขืจื ืฉื ืืืืืงืืื, ืืื ืฉื ื ืืืืืงืื JSON ืืื ืืืจื ืืฉื ื. ืืขืฆื ืคืืืืจืื ื jq ืืืืืื ืืืืืืจ ืขืจื ืืื ืื ืืกืคืจ ืขืจืืื, ืืืืืคืจืืืจ ืคืกืืง ืืืืฆืจ ืคืืืืจ ืฉืืืืืจ ืืกืคืจ ืขืจืืื. ืขืืืื ืืคืฉืจ ืืงืืช ืืช ืฉื ื ืืืืืืงืืื ืืืื ืืคืืืืจ ื ืืกืฃ ืืื ืืงืื ืจืง ืืช ืืฉืขืจ:
curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi | .USD,.EUR | .rate'
26,938.4713
26,242.0041
ืืืคื ื ืฉื ืืคืจื ืืงืืื ืืืืก ืืจืฆื ืืืจืืืช ืคืืืืจ ื ืืกืฃ, ืืื ืคืืืืจ ืืืืฉื ืืืคืชื ืืืืืืงื ืื ืืืขืจื ืืืกืืื ืืกืืืจืืื ืืจืืืขืื. ืืืืจืื ืืช ื JSON ืืืชื ืืชืืื ื ืืืชืจ? ืื ืขื ืืืขืจื ืฉืฉืืืชื ืืชืื ืื ืกืืช ืืืฆืื ืืื ืืืฉืช ืืฆืืขืื ืฉืื? ืื ืื ื ืฉืชืืฉ ืืคืืืืจ:
.colors[1]
ื ืงืื ืืืืืง ืืช ืืฆืืข ืืฉื ื ืืจืฉืืื. ืื ื ืฉืชืืฉ ืืคืืืืจ .colors ื ืงืื ืืขืจื ืฉื ืืฆืืขืื, ืืื ื ืฉืชืืฉ ืืคืืืืจ:
.colors[]
ื ืงืื ืคืฉืื ืืช ืฉืืืฉืช ืืฆืืขืื ืืชืืจ ืฉืืืฉื ืขืจืืื ื ืคืจืืื. ืืืคืจืืืจ ืกืืืจืืื ืืจืืืขืื ื ืืืฉ ืืืคืชื ืืืืืืงื ืื ืืชื ืืืขืจื, ืืื ืื ืืชืืชื ืืื ืืงืก ืืื ืืืชื ืืช ืื ืืชืืื ืืืขืจื ืื ืืช ืื ืืืคืชืืืช ืืืืืืงื. ืืคืฉืจ ืืฉืื ืืืชื ืขื ืืขืืืื ืฉืขืฉืื ืื ืขื coinbase ืืื ืืงืื ืืช ืื ืืฉืขืจืื ืฉื ืืืืืงืืื:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi | .[] | .rate'
26,920.2192
22,494.3198
26,224.2239
ืื ืืืชืื ืืืงืืฆืจ:
curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi.[].rate'
26,920.2192
22,494.3198
26,224.2239
ืืืืืื ืฉืื ืืืื ืืืชืจ ืฉืืืืฉื ืื ืืืื ืื ื ืื ืืช ืืืืืข ืฉืืชืืื ืืื ืฉืขืจ:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi.[] | .code,.rate'
USD
26,928.6392
GBP
22,501.3555
EUR
26,232.4262
## ืขืืืื ืขื ืืขืจืืื ืืืฆืืจืช ืืืืืงืืื ืืจื ืืืืืื
ืื ืืืื ืืืืคืจื ืืงืืื ืืืืก ืืขืืืจ ื API ืงืฆืช ืืืชืจ ืืชืืืื - ืจืฉืืืช ืืืืืจืื ืฉื ืืฉืชืืฉ ืืืืืืื. ืื ื ืืืงื ืืช ืืืฉืชืืฉ ืฉืื ืืฉืืื ืืืืืื ืืจืฉืืืช ืืืืืจืื ืืฆืืืืจืืื ืฉืื ืืืื ื ืืงืืฉืืจ:
$ curl --silent https://api.github.com/users/ynonp/repos
ืืชืืจ ืืชืืื ืืืืชื ืจืืฆื ืืืืืืง ืืื ืืช ื JSON ืืื ืืื ืคืฉืื ืืจืื ืืื, ืืฉ ืื ืืืชืจ ืืื ืืืืจืื. ืืืฆื ืืื ืื ื ืืฉืชืืฉ ื jq ืืื ืืืืคืืก ืจืง ืืช ืืืืืจ ืืจืืฉืื ืืืขืจื ืืงืื:
$ curl --silent https://api.github.com/users/ynonp/repos
{
"id": 15167222,
"node_id": "MDEwOlJlcG9zaXRvcnkxNTE2NzIyMg==",
"name": "2013-Advent-Staging",
"full_name": "ynonp/2013-Advent-Staging",
"private": false,
"owner": {
"login": "ynonp",
"id": 128594,
"node_id": "MDQ6VXNlcjEyODU5NA==",
"avatar_url": "https://avatars.githubusercontent.com/u/128594?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/ynonp",
"html_url": "https://github.com/ynonp",
"followers_url": "https://api.github.com/users/ynonp/followers",
"following_url": "https://api.github.com/users/ynonp/following{/other_user}",
"gists_url": "https://api.github.com/users/ynonp/gists{/gist_id}",
"starred_url": "https://api.github.com/users/ynonp/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/ynonp/subscriptions",
"organizations_url": "https://api.github.com/users/ynonp/orgs",
"repos_url": "https://api.github.com/users/ynonp/repos",
"events_url": "https://api.github.com/users/ynonp/events{/privacy}",
"received_events_url": "https://api.github.com/users/ynonp/received_events",
"type": "User",
"site_admin": false
},
"html_url": "https://github.com/ynonp/2013-Advent-Staging",
"description": "Staging area for Perl Catalyst Advent articles (Winter 2013)",
"fork": true,
"url": "https://api.github.com/repos/ynonp/2013-Advent-Staging",
"forks_url": "https://api.github.com/repos/ynonp/2013-Advent-Staging/forks",1 420
"rate": "26,888.0465",
"description": "United States Dollar",
"rate_float": 26888.0465
},
"GBP": {
"code": "GBP",
"symbol": "£",
"rate": "22,467.4365",
"description": "British Pound Sterling",
"rate_float": 22467.4365
},
"EUR": {
"code": "EUR",
"symbol": "€",
"rate": "26,192.8829",
"description": "Euro",
"rate_float": 26192.8829
}
}
}
ืจืง ืืืขืืจื ื jq ืืืจ ืืืคืืกื ืืช ื JSON ืืฆืืจื ืงืจืืื ืืืชืจ. ืืื ืื ืืฉ ืืื JSON ืืกืืจ ืืืชื ืืืืงื ืจืืฆืื ืืืืืฅ ืืืชื (ืืืืืจ ืืืืืง ืืช ืื ืืจืืืืช ืืฉืืจื ืืืืื ืื ืืฆืื) ืชืืืื ืืืฉืชืืฉ ืืืชื -c. ืื ืืกืฃ ืืืชื -M ืืืคืืก ืืช ืืคืื ืืื ืฆืืขืื ืืืื ืคืงืืื ืืืืช ืชืืคืืก ืื ืืืืืงื JSON ืืืืืื ืฉืื:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq | jq -Mc
ืืื ืื ืื ื ืืืจ ืืืืจืื ืขื ืืืชืืื ื jq ืื ืฉืืื ืืืืืจ ืฉืืืชื -S ืืืจื ื jq ืืืืคืืก ืืช ื JSON ืขื ืืืคืชืืืช ืืกืืืจืื ืืคื ืกืืจ ืืืืื ื:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -S
{
"bpi": {
"EUR": {
"code": "EUR",
"description": "Euro",
"rate": "26,191.6827",
"rate_float": 26191.6827,
"symbol": "€"
},
"GBP": {
"code": "GBP",
"description": "British Pound Sterling",
"rate": "22,466.4070",
"rate_float": 22466.407,
"symbol": "£"
},
"USD": {
"code": "USD",
"description": "United States Dollar",
"rate": "26,886.8144",
"rate_float": 26886.8144,
"symbol": "$"
}
},
"chartName": "Bitcoin",
"disclaimer": "This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org",
"time": {
"updated": "Sep 19, 2023 08:18:00 UTC",
"updatedISO": "2023-09-19T08:18:00+00:00",
"updateduk": "Sep 19, 2023 at 09:18 BST"
}
}
ื ืชืงืื ืขื ื JSON ืืืืื ื ืืจืจ ืืื ืืืืจ ืฉืืื ืืืืงืืื ืืืื. ืืฉืืื ืืืืืข ืืขืจื ืฆืจืื ืืืชืืื ืขื ืืืคืชื bpi, ืืืืฉืื ื USD ืืฉื ืืืฆืื ืืช ืืขืจื ืฉื rate. ืกื ืืื ื jq ืื ืืืื:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq '.bpi.USD.rate'
"26,889.1029"
ืืื ืืชื ืื ืจืืฆืื ืืช ืืืจืืืืช ืกืืื ืืขืจื ืชืืืื ืืืงืฉ ื jq ืืืืชืจ ืขืืืื ืืืืฆืขืืช ืืืชื -r:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi.USD.rate'
26,889.1029
ืืืืืื .bpi.USD.rate ื ืงืจื ืคืืืืจ, ืื ืืื ืืงืื ืืชืืจ ืงืื ืืช ืื ืืืืืงื ื JSON ืืืืืืจ ืืช ืืขืจื ืฉืืื ืืฆื ืืฉืื. ื jq ืืฉ ืฉื ื ืืืคืจืืืจืื ืืจืืืืื ืืื ืืืืจ ืคืืืืจืื: ืืืคืจืืืจ | ืืืืคืจืืืจ ,. ืืืืคืจืืืจ | ืืืืจ ืคืืืืจืื ืืืืจ, ืื ืฉืืคืื ืฉื ืคืืืืจ ืืื ืืืคื ืืงืื ืฉื ืืคืืืืจ ืืื ืืชืืจ. ืืืืคืจืืืจ , ืืืืจ ืืืชื ืืืงืืื ืื ืฉืืงืื ื ืฉืื ืืฉื ื ืืคืืืืจืื ื jq ืืืืจ ืืช ืืคืื ืฉื ืฉื ืืื. ืืืื ื ื ืกื ืืช ืื. ืืืืจ ืืื ืื ื ืืืืขืื ืืขืืื ืขื ืคืืืืจ ืืืคืชื ืืคืฉืจ ืืงืืช ืืคืชื ืืืชืจ ืงืฆืจ ืืืืืื ืจืง ืืช ืืืืืืงื .bpi:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi'
{
"USD": {
"code": "USD",
"symbol": "$",
"rate": "26,912.5561",
"description": "United States Dollar",
"rate_float": 26912.5561
},
"GBP": {
"code": "GBP",
"symbol": "£",
"rate": "22,487.9165",
"description": "British Pound Sterling",
"rate_float": 22487.9165
},
"EUR": {
"code": "EUR",
"symbol": "€",
"rate": "26,216.7588",
"description": "Euro",
"rate_float": 26216.7588
}
}
ืขืืฉืื ื ืืงื ืืช ืืืืืืงื ืืื ืื ืฉืื ืืืชื ืืคืืืืจ ืืคืชื ื ืืกืฃ:
$ curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq -r '.bpi | .USD'
{
"code": "USD",
"symbol": "$",
"rate": "26,920.8824",
"description": "United States Dollar",
"rate_float": 26920.8824
}
ืืืืจ ืื ืื ื ืืืื ืื ืฉืืืชืื .bpi.USD ืืื ืืขืฆื ืงืืฆืืจ ืืจื ืืืชืื ืืืืืจ ืืคืืืืจืื ืืืืจ .bpi.USD. ืืื ืื ืงืืจื ืื ืื ืื ื ืจืืฆืื ืืงืื ืื ืืช ืืืืืข ืืืืจื? ืืคืขื ื ืฉืชืืฉ ืืคืกืืง:1 420
# ืคืืขื ืื JSON ืืฉืืจืช ืืคืงืืื ืขื jq
ืคืืจืื JSON ืืคื ืืืจื ืืกืื ืืจืืืช ืื ืื ืื ื ืขืืืืื ืขื ื ืชืื ืื ืืืืื jq ืืื ืืืืืจ ืืฉืืืืฆืจื ืืืืฉืื ืืฉืืื ืืงืจืื ืืืขืจืื ืืืืข ืืคืืจืื JSON ืืฉืืจืช ืืคืงืืื. ืืืืจืื ืื ืืืื ืืชืื ืืื ืืขืืื ืขื jq ืืื ืืืืฆืื ืืงืืืช ืืืืข ืื JSON-ืื ืฉืืื ืืื ืฉืชืฆืืจืื ืืืคืขืื ืืช ื IDE. ืืฉืืื ืฉืืืื ืืขื ืืื ืื ืื ื ื ืืื ืขื jq ืืจื ืขืืืื ืขื ื ืชืื ื JSON ืืืืชืืื: ื ืชืืื ืขื ืืืจืช ืืืืขืืช ืืืืืืืืื ืืืชืจ coinbase, ื ืืฉืื ืืืืืืื ืืื ืืืืื ืขื ืคืืขื ืื ืืืืจื ืงืื ืื ืกืืื ืขื ืขืืืื ืงืืฆื JSON ืืงืืืืื.
ืคืืกื ืื ืืืื ืื ืืชืืจ ืืืจืื ืืืืื ืืื ืืื ืืืชืจ ืืงืืฉืืจ:
https://www.tocode.co.il/boosters/jq
## ืืชืงื ืช jq
ืืืื jq ืืื ืื ืกืื ืืจืื ืืืื ืืงืก ืืื ืืฉ ืืื ืืื ืืงืก ืื ืืง ืจืื ืืกืืืืืื ืฉืืื ืืืจ ืืืชืงื. ืืืืื ืืื ืืคืฉืจ ืืืฆืื ืืืชื ืืืืืืืช ืืกืื ืืจืืืืช ืฉื ืืื ืืงืก ืืืืืื:
# Debian / Ubuntu
$ sudo apt-get install jq
# Fedora
$ sudo dnf install jq
# OpenSuse
$ sudo zypper install jq
# Arch
$ sudo pacman -S jq
ืืืชืจ ืฉื jq ืืคืฉืจ ืืืฆืื ืืฃ ืืกืืืจ ืขื ืืืืืืช ืืืืจืื ืืื ืืชื ืืฉืชืืฉื ืืง ืชืืืื ืืืชืงืื ืืืชื ืขื homebrew ืขื ืืคืงืืื:
$ brew install jq
ืืืื ืืชืื ืืฉืคืช c, ืืืืจืกื ืืขืืื ืืช ืืจืืข ืืื 1.7 (ืืืจืืช ืฉืืืจืื ืืงืืืืช ืขืืืื ืืฉืชืืฉืื ื 1.6). ืืชื ืืืืืื ืืืืื ืฉืืืชืงื ืืฆืืื ืื ืืืืื ืืืจื ืฉืืชืงื ืชื ืฉืืื ืขืืื ืืืืฆืขืืช ืืคืขืืช:
$ jq --version
ืื ืืกืฃ ืืคืืื ืื ืืื ืืื ืืช jq ืืืชืงื ืขื ืืืืฉื ืขืืืื ืชืืืื ืืืฉืชืืฉ ืืืืจืกืช ืืืื ืืืื ืฉืื ืืืชืจ:
https://jqplay.org.
## ืืื ืื ืขืืื
ืืืืจื ืฉื jq ืืื ืืืฉืื ืืืืข ืืืืืืงื JSON ืืืืืืืจ ืืืชื ืืื ืืจื ืฉื ืจืฆื, ืืืื ืืืื ื ืืืกืืกื ืืขืืืื ืืืชื ื ืงืจื filter. ืคืืืืจ ืืื ืคืงืืื ืฉืืงืืืช ืงืื ืืืืืืจื ืคืื, ืืคืืืืจืื ืืคืฉืจ ืืืืจ ืื ืฉืคืื ืืคืืืืจ ืืื ืืืคืื ืืงืื ืฉื ืืคืืืืจ ืืื. ืืืืื ืืคืืืืจ ืคืฉืื ืืื ืืคืืืืจ "ื ืงืืื ืืคืชื", ืฉืืงืื ืืืืืงื JSON ืืืืืืจ ืืช ืืขืจื ืืืคืชื. ื ืืื ืก ืืืชืจ https://jqplay.org/# ืื ืืชืื ืฉื ืืช ื JSON ืืื:
{
"one": 1,
"two": 2,
"colors": [
"red",
"blue",
"green"
],
"paths": {
"jq": "/opt/homebrew/bin/jq",
"cp": "/bin/cp"
}
}
ืขืืฉืื ืืชืืื ืฉืืืขืื ืขื ืืืืชืจืช Filter ื ืืชืื ืืช ืืคืืืืจ:
.one
ืื ืืื ืืจืืืช ืืชืืืช ืืชืืฆืืืช ืืช ืืขืจื 1.
ืืฉืืื ืืืฉืืง ื ืขืืื ืืช ืืคืืืืจ ื .paths.jq ืื ืจืื ืืช ืืขืจื ืืชืืืช ืืชืืฆืืืช ืืชืขืืื ื "/opt/homebrew/bin/jq". ื ืกื ืืฉืืง ืขื ืื ืืืืืืข ืืขืืจืช ืืคืืืืจ ืืื ืืื ืืืขืจืืื ื JSON. ืื ืชืืืื ืื ืื ืืฆืืืชื ืืืืืข ืืชืืื ืืืขืจื, ืชืืฃ ื ืจืื ืืื ืืื ืืืฉืช ืืืืื.
## ืคืืขื ืื ืืืืข ื coinbase
ืขืืฉืื ืฉืืื ื ืื ืืืืจื ืฉื jq ืืืื ื ืืคืจื ื jqplay ืื ืขืืืจ ืืฉืืจืช ืืคืงืืื. ื JSON ืืจืืฉืื ืฉื ืจืฆื ืืคืขื ื ืืืืข ืื API ืฉื coinbase ืืื ื ืืืฉื ืืืชื ืืฉืืจืช ืืคืงืืื ืขื curl ืืืืคื ืืื:
curl --silent https://api.coindesk.com/v1/bpi/currentprice.json
{"time":{"updated":"Sep 19, 2023 08:13:00 UTC","updatedISO":"2023-09-19T08:13:00+00:00","updateduk":"Sep 19, 2023 at 09:13 BST"},"disclaimer":"This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org","chartName":"Bitcoin","bpi":{"USD":{"code":"USD","symbol":"$","rate":"26,884.9920","description":"United States Dollar","rate_float":26884.992},"GBP":{"code":"GBP","symbol":"£","rate":"22,464.8842","description":"British Pound Sterling","rate_float":22464.8842},"EUR":{"code":"EUR","symbol":"€","rate":"26,189.9074","description":"Euro","rate_float":26189.9074}}}%
ืืขืื ืจืืฉืื ื ืฉื ื JSON ืืื ืืื ืฉืงืฉื ืืงืจืื ืืืชื ืืืืจ ืืืื ืืจืืืืช ืฉืืจื ืืืื ืื ืืฆืื. ื ืฉืชืืฉ ื jq ืืื ืืชืงื ืืืช:
curl --silent https://api.coindesk.com/v1/bpi/currentprice.json | jq
{
"time": {
"updated": "Sep 19, 2023 08:14:00 UTC",
"updatedISO": "2023-09-19T08:14:00+00:00",
"updateduk": "Sep 19, 2023 at 09:14 BST"
},
"disclaimer": "This data was produced from the CoinDesk Bitcoin Price Index (USD). Non-USD currency data converted using hourly conversion rate from openexchangerates.org",
"chartName": "Bitcoin",
"bpi": {
"USD": {
"code": "USD",
"symbol": "$",1 420
# ืกืคืจืื ืืืงืื ืืื ื?
ืคืจืืืงื ืคืืืชืื ืืืฉ ืืฆืืข ืืคืชืืจ ืขืืืจื ื ืืช ืืืขืื ืืงืืืกืืช ืขื ืงืืื'ืจืื ืืคืืืชืื. ืื ืงืื ืืืืืื:
a = []
for i in [1, 2]:
a.append(lambda: i)
for f in a:
print(f())
ืืจืื ืื ืฉืื ืืืคืชืขืื ืืืืืช ืฉืืงืื ืืื ืืืคืืก ืคืขืืืื ืืช ืืืกืคืจ 2, ืืืงืื ืืช 1 ื-2 ืืื ืฉืืืื ืงืืืืื ื. ืืืจื ืฉืจืืืื ืืื ืืฉืืื ืืืื ืืื ืืื ืคืืชืจืื ืืช ืื.
ืืื ืืจื ืืืช ืื ืืคืื ืงืฆืื ืืืคืจืืืงื scope_capture.
ืืื ืืืื ืืืื ืืืชืจ ืืขื ืืื ืืืืื ืฉื"ืืขืื" ื ืืจืื ืื ืืืืื ืืคืืืชืื ืื ืืืืฆืจืช ืชืืื ืืืืจื ืืืฉืชื ื, ืืื ืื ืฉืื ืื ื ืฆืจืืืื ืื "ืืชืคืืก" ืืช ืืขืจื ืฉื i ืืืฉืื ืฉืื ืืืืฆืจ ืชืืื ืืืืจื ืืืฉืชื ื, ืืืฉื ืคืื ืงืฆืื. ืืฉืื ืื ื ืจืืืื ืืช ืื ืืฆืขื ืืื ืืื ืืืฉืื ืืื ืื ื ืืื ืืก ืืช i ืืืืืช ืืฉืชื ื ืคืจืื ืื ืคืจืืืจ ืฉื ืคืื ืงืฆืื ืืื ืืืืืืจ ื partial:
from functools import partial
a = []
for i in [1, 2]:
a.append(partial(lambda i: i, i))
for f in a:
print(f())
ืื partial ืืืืื ืืื ืืช ืื ืคืื ืงืฆืื ืืืฉื ื"ืืงืืข" ืืช ืืคืจืืืจ ืฉืื ืืขืจื ืฉื i ืืจืืข ืืงืจืืื ื partial, ืืืืืจ ืืชืื ืืืืืื. ืืงืื ืขืืื ืืืืคืืก 1 ื-2 ืืื ืฉืจืฆืื ื, ืืืืืื ืืฉ ืื ืขืื ืฉื ื ืืชืจืื ืืช ืืฉืืืื:
1. ืื ืฆืจืื ืืืชืงืื ืืืื, ืื ืืืกืคืชื ืชืืืช ืืืฉื ืืคืจืืืงื.
2. ืืงืื ืืฉืชืืฉ ืืืื ื ืืืชืจ ืื ืจื - ืืคืื ืงืฆืื partial. ืืชืื ืชืื ืืืฉืื ืฉืืืืขื ืืงืื ืืืื ืืืืื ืืืฉืชืืฉ ืื ืื ืืืงืฉืจืื ืืืจืื.
ื ืฉืืื ืืช ืื ืืงืื ืฉื ืืกืคืจืื scope_capture:
import inspect
from types import FunctionType
def _make_cell(value):
fn = (lambda x: lambda: x)(value)
return fn.__closure__[0]
def capture(f):
try:
frame = inspect.currentframe()
fake_globals = {}
fake_globals.update(f.__globals__)
fake_globals.update(frame.f_back.f_locals)
captured_cells = []
if f.__closure__:
for cell in f.__closure__:
captured_cells.append(_make_cell(cell.cell_contents))
call_fn = FunctionType(
code=f.__code__,
globals=fake_globals,
name=f.__name__,
argdefs=f.__defaults__,
closure=tuple(captured_cells),
)
return call_fn
finally:
del frame
ืื ืื ืื ืืคื ืืื ืฉืืื ืื ื ืคืืงื ืฆืื ืืืฉื ืขื ืงืจืืื ื FunctionType ืืขืืื ืืืชื ืืจืืฅ ืขื ืืืฉืชื ืื "ืฉื ืชืคืกื" ืืืืืืืืช. ืืขืืืื ืืชืขืจ ืฉื ืืืงืื ืื ืฆื ืคื. ืืืืื ืืช ืืฉืคื ืืืชืจ ืืฉืชืื ืืืฉืจ ืืฉืืืจ ืืืชื ืืื ืฉืชืชืืื ืืืืื ืืื ืืื ืฉืื.1 420
$ rm -rf demo/.git $ git add demo $ git commit -m 'add demo'ืืืืื ื add ืขื reset ืืคื ื ืฉืืืฉืืืื ืืื ืืืกื ืืช ืืื ืกืช ืชืช ืืคืจืืืงื ืืืช ืืืืืืื ืฉืื ืืืชื.
1 420
# ืืฆืืื ืืื - ืื ืืคืฉืจ ืืืฉืช ืืงืืืฅ
ืืืชืจืื ืืืืืกืจืื ืฉื ืขืืืื ืขื ืืืฉืง ืฉืืจืช ืืคืงืืื ืฉื ืืื ืืื ืืืืืขืืช ืืืื ืกืืคืืืช ืฉืืื ืืืชื ืืฉืื ืกืื ืืขืฉืืช ืืฉืื ืื ืืืืื ื. ืืฆื ืืื ืื ืืืื ืฉืืื ืืกืืืจ ืืื, ืืื ืืฆื ืฉื ื ืงื ืืืื ืขื ืืืืืจืืช ืืืจืืืืช ืืืงืืืช ืฉืืื ืืกืชืืจ ืืขืฆืื. ืืืืืื ืืืื ืืืืืฉื ืืื ืืฉืื ืืงืจืื ืืช ืืคืืืืง ืฉื ืืื.
## ืืื ื ืื ืกืื ืืืืจ
ื ืืฆืืจ ืคืจืืืงื ืืื ืืชืืงืื ืืฉื subproject, ืืื ื ืืฆืืจ ืคืจืืืงื ืืื ืืืฉ ืืชืืงืื ืืืจืช (ืงืจืืชื ืื demo). ืขืืฉืื ื ืขืชืืง ืืช ืชืืงืืืช demo ืืชืื ืชืืงืืืช subproject ืื ืคืขืื ืืชืื ืชืืงืืืช subproject ืืช ืืคืงืืื:
$ git add demo
ืืื ื ืืืฅ ืืืืคืืก ืืืืขื ืืจืืื ืืื ื ืื ื ืงืืจื ืจืง ืืช ืืฉืืจื ืืจืืฉืื ื:
warning: adding embedded git repository: demo
hint: You've added another git repository inside your current repository.
hint: Clones of the outer repository will not contain the contents of
hint: the embedded repository and will not know how to obtain it.
hint: If you meant to add a submodule, use:
hint:
hint: git submodule add <url> demo
hint:
hint: If you added this path by mistake, you can remove it from the
hint: index with:
hint:
hint: git rm --cached demo
hint:
hint: See "git help submodule" for more information.
ืืฉืืจื ืืจืืฉืื ื ืืกืคืืงื ืืฉืืื ืืืืื ืฉื ืืกืืชื ืืืืกืืฃ ืคืจืืืงื ืืื ืืชืื ืคืจืืืงื ืืื. ื ื, ืื ืืืขืื, ืคืฉืื ื ืืืง ืืช ืืืืกืืืจืื ืฉื demo ืื ืชืงืื. ื ืคืขืื:
$ rm -rf demo/.git
$ git add demo
$ git commit -m 'add demo'
ืืคืขื ื add ืืื ืฉืืืื ืืืงืืืื ืื ืขืืจ ืืฉืืื. ืืช ืืชืืฆืื ืืืคืชื ืืจืืคื ืืงืืฉืืจ ืืื:
https://github.com/ynonp/add-subproject-demo.
ืื ืชืืื ืกื ืืจืืคื ืชืฉืืื ืื ืฉืืชื ืื ืืืืช ืืืืืื ืืืืื ืก ืืชืืงืืืช demo ืื ืืจืืืช ืืช ืืงืืฆืื ืฉืืชืืื.
## ืื ืฉืืืจ ืืคืจืืืงื
ื ืคืขืื log ืืื ืืจืืืช ืื ื ืฉืืจ:
$ git log -p
commit 6d0d2fd41a8aa93a302d62cea5918b783ac00232 (HEAD -> main, origin/main)
Author: ynonp <ynonperek@gmail.com>
Date: Mon Sep 18 21:39:37 2023 +0300
add demo
diff --git a/demo b/demo
new file mode 160000
index 0000000..badb3c5
--- /dev/null
+++ b/demo
@@ -0,0 +1 @@
+Subproject commit badb3c5753a70c02e4e05a62ef9d6fcb65758d6c
commit 64f5679443ac216fb0e94483e679473f6f458294
Author: ynonp <ynonperek@gmail.com>
Date: Mon Sep 18 21:36:30 2023 +0300
hello world\
diff --git a/readme.txt b/readme.txt
new file mode 100644
index 0000000..3b18e51
--- /dev/null
+++ b/readme.txt
@@ -0,0 +1 @@
+hello world
ืื ืฉืื ืื ืืืืฆืข ืืฉืืจื:
+Subproject commit badb3c5753a70c02e4e05a62ef9d6fcb65758d6c
ืื ืงืจื ืคื? ื git add ืืจืืฉืื ืืืื ื ืืืคืืก ืืืืจื ืืื ืขืืืื ืืืฆืข ืืช ืืคืขืืื ืฉืื ืืืืกืืฃ ืคืจืืืงื ืืชืื ืคืจืืืงื. ื git add ืืฉื ื ืืืฆืข ืคืขืืื ืืืฉื ืฉืืืชื ืืืืกืืฃ ืชืืงืื ืืงืืฆืื ืืชืื ืคืจืืืงื. ืขืืฉืื ืืงืืืื ืืื ืืก ืืช ืฉื ื ืืฉืื ืืืื ืืืคืจืืืงื ืฉืื ืืืืืจืช ืื ืชืืงืื ืืฉื demo ืืื ืชืช-ืคืจืืืงื ืืฉื demo, ืืฉืชืช ืืคืจืืืงื ืืกืชืืจ ืืช ืืชืืงืื ืืืื ืื ื ืืชื ืืืืื ืก ืืืื.
## ืืื ืืืฆืืื ืืืืืจ
ืืืจื ืฉืืื ื ืืช ืืืขืื ืืคืฉืจ ืืืืืจ ืืืงืจืื ืืช ืืืืืจื ืฉื ืืื:
hint: If you added this path by mistake, you can remove it from the
hint: index with:
hint:
hint: git rm --cached demo
hint:
hint: See "git help submodule" for more information.
ืืืื ืฉืชืช-ืืคืจืืืงื demo ืืกืชืืจ ืืช ืืชืืงืื demo (ืืื ืืืืง ืืืืืื ืคื), ืื ื ืฆืจืื ืืืืืง ืืืชื ืืคื ื ืฉืืืื ืืืืกืืฃ ืืช ืืชืืงืื.
$ git rm --cached demo
$ git add demo
$ git commit -m 'add demo'
## ืื ืืื ืฆืจืื ืืขืฉืืช ืืจืืฉ
ืฉืืื ืืืืืจ ืฉ add ืืืืช ืขืืฉื ืืืจืื, ืืืคืขืืื ืืืคืืื ืฉืื ืืื reset, ืืื ืื ืงืืืืชื ืืืืจื ืืคืืืื ืืืื ืืืจื add ืืืืจ ืืื ืงื ืืขืฉืืช ืืื:
$ git add demo
warning: adding embedded git repository: demo
hint: You've added another git repository inside your current repository.
hint: Clones of the outer repository will not contain the contents of
hint: the embedded repository and will not know how to obtain it.
hint: If you meant to add a submodule, use:
hint:
hint: git submodule add <url> demo
hint:
hint: If you added this path by mistake, you can remove it from the
hint: index with:
hint:
hint: git rm --cached demo
hint:
hint: See "git help submodule" for more information.
$ git reset1 420
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.001 0.001 3.382 3.382 <string>:1(<module>)
1 0.000 0.000 3.381 3.381 a.py:16(primes_below_v2)
1 0.116 0.116 3.381 3.381 a.py:17(<listcomp>)
999998 3.216 0.000 3.265 0.000 a.py:19(is_prime)
1 0.000 0.000 3.382 3.382 {built-in method builtins.exec}
999998 0.049 0.000 0.049 0.000 {built-in method math.sqrt}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
ืืคืขื ืืฉืืื ืฉืื ืืงืื ืืขื 3 ืฉื ืืืช ืืขืื ืฉืืฉืืื ืฉื ืืจืกืืืื ืก ืืฆืื ืืช ืื ืืืกืคืจืื ืืงืฆืช ืืืชืจ ืืืฆื ืฉื ืื. ืืื ืืคืืฆ'ืจืื ืฉืื ื ืืืื ื cPython ืืื ืืืืืืช ืืืชืื ืืช ืืกืืืืกืืืงืืช ืืงืืืฅ ืืืงืื ืืืกื ืืืืฆืขืืช ืืืกืคืช ืฉื ืงืืืฅ ืืคืจืืืจ ืฉื ื ืืงืจืืื:
cProfile.run("list(primes_below(1_000_000))", "stats1.profile")
cProfile.run("list(primes_below_v2(1_000_000))", "stats2.profile")
ืืช ืืงืืฆืื ืืคืฉืจ ืืฉืืืจ ืขื ืืฉืจืช ืืืื ืคืขื ืืืฉืื ืืืชื ืืืืฉืชืืฉ ืืืืืื SnakeViz ืืื ืืคืชืื ืืช ืืกืืืืกืืืงืืช ืืฆืืจื ืืืืืืืืช ืืฆืื ื ืขื ืืืืฉื ืืืืืื ืืื ืืืขืจืืช ืฉืื ืขืืื ืื ืื ืืื ืืืืคื ืืคืฉืจ ืืฉืคืจ.1 420
# ืืืจื ืืื ืงืื ืืืืืง ืืืฉืคืจ ืืืฆืืขืื ืืคืืืชืื
ืืืืืื cProfile ืืฆืืข ืืจื ืงืื ืืืืืืงืช ืืืฉืืืช ืืืฆืืขืื ืฉื ืคืื ืงืฆืืืช ืืคืืืชืื ืืืคืขืืื ืื ืืืื ืืืื ืืืชื ื ืื ืืืขืื ืืืื ืืชืงื ืืืชื. ืืืื ื ื ืกื ืืืชื ืืืืฆืขืืช ืืืคืืฉ ืืกืคืจืื ืจืืฉืื ืืื.
## ืืื ืื ื ืืืฆื ืืกืคืจืื ืจืืฉืื ืืื
ืืจื ืงืื ืืืืืง ืื ืืกืคืจ ืจืืฉืื ื ืืคืืืชืื ืืื ืื ืกืืช ืืืฆืื ืืื ืืื ืืชืืืง. ืื ื ืืงืื:
def is_prime(n: int) -> bool:
for i in range(2, int(sqrt(n)) + 1):
if n % i == 0:
return False
return True
ืขืืฉืื ืืฉืืื ืืืฆืื ืืช ืื ืืืกืคืจืื ืืจืืฉืื ืืื ืืงืื ืื ืืืกืคืจ ืืกืืื ืืกืคืืง ืืืคืขืื ืืช ืืคืจืืืงื ืขื ืื ืืืกืคืจืื ืืืืื ืืืจืืืช ืื ืืืืืจ ืขืจื ืืืช:
def primes_below_v2(n: int):
return [p for p in range(2, n) if is_prime(p)]
## ืืื ืืจืกืืืื ืก ืืืฆื ืืกืคืจืื ืจืืฉืื ืืื
ืื ืคื ืฉื ืืจืกืืืื ืก ืืื ืฉืืื ืืืื ืืืชืจ ืืืฆืื ืงืืืฆืืช ืฉื ืืกืคืจืื ืจืืฉืื ืืื. ืืจืกืืืื ืก ืฉื ืื ืฉืืกืคืจ ืจืืฉืื ืื ืื ืืกืคืจ ืฉืื ืืชืืืง ืืฉืื ืืืจ ืืืื ืืืื ืืืขืฆืื, ืืืื ืื ืืฉ ืื ืืกืคืจ ืจืืฉืื ื ืงื ืืืื ืืืฆืื ืืืื ืืกืคืจืื ืื ืจืืฉืื ืืื - ืคืฉืื ืชืืคืื ืืช ืืืกืคืจ ืืจืืฉืื ื ืฉืืืจ ืืฉ ืื ืืืกืคืจืื 2, 3, 4, 5 ืืื ืืืื. ืื ื ืชืืื ืืืืืื ืขื 2 ืฉืืื ืจืืฉืื ื ืื ืืจืืจ ืฉืื ืืืกืคืจืื ืืืืืืื ืืื ื ืจืืฉืื ืืื. 3 ืืื ืจืืฉืื ื ืืืื 6, 9, 12, 15 ืืื ืฉืืจ ืืืคืืืืช ืฉื 3 ืืื ื ืจืืฉืื ืืื. ืืช ืื ืคื ืืคืฉืจ ืืงืืื ืืคืืืชืื ืืืืคื ืืื:
def primes_below(n: int) -> Generator[int, None, None]:
p = 2
marked = set()
while p < n:
yield p
marked.add(p)
for i in range(n // p + 1):
marked.add(i * p)
while p in marked:
p = p + 1
## ืื ืืืชืจ ืืืืจ
ืืื ื ืืข ืืืื ืฉืืื ืืืืจื ืืืชืจ? ืืื ืืืื ืืืื ืืืืืฆืื ืืืจืืจื ืขืืืื ืืืื ืืขื ืืื ืืจืืืช ืงืฆืช ืืกืคืจืื, ืืืืืืื cProfile ืคื ืืฉืืื ืืขืืืจ. ืื ื ืืืกืืฃ ืืช ืืงืื:
import cProfile
cProfile.run("list(primes_below(100))")
cProfile.run("list(primes_below_v2(100))")
ืืืจืืฅ, ืืืคืขื ืืงืื ืืช ืืคืื ืืื ืขื ืืืกื:
~/tmp ๎ฐ python a.py
250 function calls in 0.000 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.000 0.000 <string>:1(<module>)
26 0.000 0.000 0.000 0.000 a.py:5(primes_below)
1 0.000 0.000 0.000 0.000 {built-in method builtins.exec}
221 0.000 0.000 0.000 0.000 {method 'add' of 'set' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
201 function calls in 0.000 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.000 0.000 <string>:1(<module>)
1 0.000 0.000 0.000 0.000 a.py:16(primes_below_v2)
1 0.000 0.000 0.000 0.000 a.py:17(<listcomp>)
98 0.000 0.000 0.000 0.000 a.py:19(is_prime)
1 0.000 0.000 0.000 0.000 {built-in method builtins.exec}
98 0.000 0.000 0.000 0.000 {built-in method math.sqrt}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
ืื ื ืืื - ืื ืื ื ืจืืืื ืืื ืืื ืืงืื ืื ืืืช ืืฉืชื ืืืจืืื ืืืคืืื ืืืื ืงืจืืืืช ืืคืื ืงืฆืืืช ืืืฆืขื ืืืื ืืื ืืืืื ื ืืื ืืืช ืืืคืื ืงืฆืืืช ืืคื ืืืืืช. ืืืขืื ืืื ืฉืืืกืคืจืื ืขืืืื ืงืื ืื ืืื ืืืื ืืืื ืืื ืฉืชื ืืฉืืืืช. ืืืกืคืจืื ืืืชืจ ืืืืืื ืืคืขืจืื ืืชืืืื:
~/tmp ๎ฐ python a.py
3089206 function calls in 0.652 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.010 0.010 0.652 0.652 <string>:1(<module>)
78499 0.367 0.000 0.642 0.000 a.py:5(primes_below)
1 0.000 0.000 0.652 0.652 {built-in method builtins.exec}
3010704 0.276 0.000 0.276 0.000 {method 'add' of 'set' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
2000001 function calls in 3.382 seconds
Ordered by: standard name1 420
ืืืฉืืืืช ืฉื ืขืืืื ืืกืืืื ืืจืืื ืืื ืขืฆืืื, ืื ืืฉืืง ืืชืืื ื ืขืืืืืช ืื ืื ืืื ืืืืื ืืื ืืฉื ื ืื ืชืขืฉื ื-5 ืฉื ืื ืืงืจืืืืช ืกืืืื ืืื ืฉืชืฆืืจืื ืืืคืฉ ืขืืืื ืืืฉื. ืกืืืืช ืืขืืืื ืืื ืฉื ืืชื ืช ืื ืืช ืืืืื, ืืืืื ืืช ืืืืืืืืช ืฉืืืฉืืื ืืืชื ืืืื ืืขืืืื ืืืื. ืกืืืื ืฉืืขืืืืช ืืชืื ืชืื ืืงืืช ืืืจืืืช, ืืืืื ื ืืฉืืื ืืืฉืื, ืืืฆืืข ืฉืืคืืจืื ืืืคืชืืจ ืืขืืืช ืืฆืืจื ืืขืืืงื ืชืืฆืื ืืชืื ืืชืื ืชืื ืืืืื ืืืชืจ ืืชืชื ืืืชืจืื ืชืืจืืชื ืขืฆืื ืืืืคืืฉ ืืขืืืื ืืื.
1 420
# ืกืืื ื ืืืืจื ืืืื ืืืงื ืจืขืืื ืืคืจืืืงื
ืืืคื ืชืจืฆื ืืืืืช ืืขืื ืฉื ืชืืื? ืืืคื ืืชื ืืืฉืืื ืฉืชืืื? ืื ืืชื ืขืืืืื ืืฆืืืช ืืื ืืฉ ืกืืืื ืืื ืฉืืขืื ืฉื ืชืืื ืชืืื ืืืชืจ ืืงืฆืืขืืื ืืื ืฉืืชื ืืืื, ืืืื ืืื ืืืชืจ ืืฉืืืื, ืืืชืจ ืงืฉืจืื ืืชืขืฉืื ืืืืชืจ ืืขืืืช ืฉืคืชืจืชื ืืชืืืื ืืืืื ืืื ืืืืฉืชืคืจ ืืขืชืื. ืื ืืชื ืขืืืืื ืืฆืืืช ืจืขืื ืืฉ ืกืืืื ืืื ืฉืืขืื ืฉื ืชืืื ืืืื ืืื ืคืืืช ืืฉืืืื, ืคืืืช ืงืฉืจืื ืืชืขืฉืื, ืืชืกืืื ื Tunnel Vision ืืืื ืืคืฉืจืืืืช ืคืืชืจืื ืืขืืืช. ืขืืืื ืืฆืืืช ืจืขืื ืืื ืืืืงื ืื ืื ืจืง ืฉืื ืื ื ืื ืืฉืชืคืจืื, ืื ืื ื ืื ืืืืฆืื ืคืจืงืืืงืืช ืืฉืืืืช ืขืืืื ืฉืคืฉืื ืืืฉืื ืืืชื ื ืืืื ืืื ืคืจืืืงื ืขืชืืื ืืืืื ืืช ืฉืืืื ืงืฉื ืืืชื ืขืจ ืืื ืืืืฉื.
ืืืขืื ืืืืชืจ ืงืฉื ืขื ืฆืืืชืื ืจืขืืืื ืืื ืฉืงืฉื ืืืื ืืฆืืช ืืื. ืื ืฉืื ืฉืขืืืืื ืืกืืืื ืจืขืืื ืืืืืื ืฉืืืช ืืืจื ืืืืืื, ืฉืฆืจืื ืืืงืจืื ืืฉืืื ืืคืจืืืงื, ืฉืืื ืคืจืืืงื ืืฉ ืืขืืืช ืืื ืืชื ืขืืฉื ืขื ืืื, ืืืืืื ืืืฉืืื ืืชืจืฅ ืืืืกืืืจ ืืขืฆืื ืืืื ืฉืื ืืกืืื ืฉืืกื ืืื ืืืฆื ืื ืืื ืจืข. ืืขืืืื, ืืื ืืืกืืจืืช ืืืจืืช ืืืืื, ืืฉืืชื ืขืืืง ืืชืื ืคืจืืืงื ืงืฉื ืืจืืืช ืืื ืืืจืื ืืื ืืืืืื ืืขืืื.
ืื ืืืืืง ืืฉืืื ืืื ืืื ืฉืชืงืืขืื ืืืืื ืืืฅ ืืื, ืฉืืืืืื ืฉืขืืฉืื ืงืฉื ืืื ืขืื ืืขื ืื ืืกืชืืจ, ืฉืืฉืืื ืขืื ืฉืืื ืคืจืืืงื ืืฉ ืืขืืืช, ืื ื ืจืฉืืื ืฉื 4 ืกืืื ื ืืืืจื ืฉืขืฉืืืื ืืจืืื ืืื ืฉืืืื ืืงืืช ืฆืขื ืืืืจื-
## ืืฉ ืจืง ืืชืื ืช ืืื ืฉืืืืข ืืืขืช ืืืืง ืืกืืื (ืืงืจืืื) ืืืขืจืืช.
ืืืจืื ืคืจืืืงืืื ืืืืจืืืช ืขื ืืืงืื ืืงืื ืืชืืืงืช ืืื ืืชืื ืชืื ืฉืื ืื ืืคืจืืืงื ืืื ืืืขื ืืืืจื, ืืื ืืฆืืืชืื ืืืืื ืืฉ ืื ื ืฉืืืืช ืืคืืจ ืืช ืืืืจืืืช ืืืืืง ืืช ืืืืข ืืืืืืื ืืช ืืืื ืืช ืืื ืืื ืฉืื - ืื ืื ื ื ืฉืชืืฉ ื Pair Programming, Code Reviews, ืืจืฆืืืช ืืฆืืืช ืืืืงืชืื ืื ืืื ืืฉืื ืื ืฉืื ืื ืืืืงืื ืฉื ืืืขืจืืช ืืื ืื ืื ื ืืืขืื ืืืื ืืื.
ืฆืืืชืื ืจืขืืืื ืืฉืืืจื ืืช ืืืืจืืืช ืจืง ืขื ืื ืืื ืืื ืืืืชื ืื ืฉืื ืืฉืชืืฉื ืืื ืฉืืื ืืื ืืืจืืืง ืื ืฉืื ืืืจืื ืฉืจืืฆืื ืืขืืืจ. ืื ืชืืื ืืชืงืฉืจืื ืืืืชื ืื ืืื ืืฉืืฉ ืืขืื ืงืจืืืืช, ืื ืื ืชืืงืื ืืื ืืืื ืืขืืืจ ืืจื ืื ืืื ืืื, ืืืืืืื ืื ืืื ืืื ืืื ืืืื ืืืื ืื ืืฉืขืืช ืื ืืืืื ืืืช, ืืฉ ืคื ืืฉื ืืืชื ืืืืช ืื ืืจืืื.
## ืื ืืืื ืืืฉืคืข ืืคืืืืืืงื ืืืื ืฆืจืื ืืกืคืจ ืืืืกืื ืืืงืื ืื ืืืื ืืื ืืืืฆืจ.
ืืื ืคืจืืืงื ืืฉ ืื ืืืื ืฉืืืืืืื ืื ืืืื ืืืืืื ืืขืืืืื ืืืชืจ ืืืืจืื ืฉืฆืจืืืื ืืืืฉ ืืช ืืืืืืืช. ืืืืื ืืื ืฉืืคืจืืืงื ืืจืื ืืื ืืืืื ืืฉ ืืกืืจ ืืืฉืชืืฉืื ืืืืจืืงืืช ืืื ืืืืื ืืืฉืงืฃ ืืืื ืืืืืืช ืืืืื ืืืืื ืชืืฆืืืช. ืืคืจืืืงื ืจืขืื ืื ืื ื ื ืจืื ืืฉืืืืช ืชืืืคืืช ืขื ืืื ืืื ืืื ืคืขื ืื ืืชื ืืืจืช ืฉื ืืืืื ืฉืฆืจืื ืืงืืช, ืืื ืืชืช ืืืืืื ืืงืืื ืืืืื ืืช ืืืคืขืืื ืืคืืื ืืื ืืกืืื ืคืืชืื ืฉื ืคืืฆ'ืจ ืฉืจืง ืืคื ื ืฉืืืข ืืื ืืชืงืืื ืืืืืื ืฉื ืืืืฆืจ.
ืืืชืจ ืืฉื ืืช ืืช ืืขืชื, ืืื ืืฉืืื ืืืื ืื ืืกืชืืืื ืขื ื ืชืื ืื ืืืืคืืขืื ืขื ืืจืืฉืืช ืืืฉืืช ืืฉืื ืืงืื, ืืฉ ืืฉื ืืืชื ืืืืช ืื ืืจืืื.
## ืืืืจื ืืื ืืืืืืช ืืืืฉืคืขืช ืืืจื ืืื ืื ืคืื ืืฉื ืืช ืืื ืืืืืื
ืฉืื ืื ืืื ืืืืื ืืื ืืืง ืืืืืื, ืื ืฉืคืืช ืืชืื ืืช ืขืฆืื ืืืคืจืืืืืืจืงืื ืืชืคืชืืื. ืื ืื ืืชืืืชื ืคืจืืืงื ืืคื ื ืขืฉืจ ืฉื ืื ืืืืจืกื ืืกืืืืช ืฉื Java ืืืื ืื ืฉืืืจืืชื ืืช ื Java ืื ืื ืืื ืืื, ืื ืืืืจ ืืฉืื ืขื ืกืืจื ืืขืืืคืืืืช ืืคืจืืืงื. ืืฆื ืฉื ื ืื ืื ืฉืืืฉื ืืืืฉืื ืื ื ืืฉืืชื ืืช ืืคืจืืืงื ืืืคืก ืืืื ืืืืืื ืืืจืช ืื ืื ืกืืื ืืกืืจื ืขืืืคืืืืช ืื ื ืืื ืื.
ืืชืืืื ืคืืชืื ืืจืื ืื ืื ื ืืชืืืืื ืขื ืืืืจื ืืื ืืืืืืช ืืกืืืืช ืืืฉื ืืฉืืจืืื ืืช ืืืืื ืืืงืื ืืฆืขืืื ืงืื ืื. ืืืฉืืืืช ืฉื ืจืืคืงืืืจืื ื ืืื ืฉืจืง ืืจื ืืชืืื ืืฉืืืจืื ืืคืืชืจืื ืื ืื ื ืืืืืื ืืฉืคืจ ืืืชื, ืืื ืืืจื ืฉืื ื ืืืืื ืืื ืืืืืื ืืืชืจ ืืขืืืง. ืืชืืืช ืงืื ืืื ืืขืืื ืืืชื, ืื ืืชืืื ืืืคืก ืื ืฉืืืฉื ืืืืฉืื, ืืฉืืืจื ืืืชื ืืจืืช ืคืืชืจืื ืืกืืกืืช ืืืงืื ืฉืืืืื ืืืขืชืง ืืืืื Tutorial ืื ื Chat GPT. ืื ืื ืกืื ืื ืืกืืื ืฉืืชื ืจืืฆืื ืืฆืืืจ ืืขืืืื.
## ืจืขืืื ืืช ืืืฉืื ื ืืืื ืืฉืืงืืืื ืื ืขื ืืื ืืื, ืืคืืชืืืื ืืืฉืื ืืงืืืื ืืชืฃ ืงืจื ืื ื ืฉืืืื ืืืื ืกืืฃ ืกืืื ืชืืงืื ืื ืืคื ื ืฉืืืืืื ืืคืจืืืงื.
ืื ืื ืจืขืืื ืืื ืืื ืืื ืืคืจืืืงืืื ืืจืืืื ืืืื ืืืืืื ืืืฆืืข ืจืขืืื ืืช ืืืฉ ืืจื ืืืืขื ืฉืื ืจืขืืื ืืช ืืืฉืื ื ืื ืกืื ืืืขืจืืช. ืื ืื ืื ืืชื ืกืงืจืืคื ืืืฉ ืฉืืืืจ ืืขืฉืืช ืืืืืืฆืื ืืชืืืื ืฉืขื ืขืืฉืื ืืื ืืื ื ืื ืืกืืจ ืืืฆืืข ืืื ืชืืงืื ืื ืืคื ื ืฉืืืฉืจืื ืืืคืืฅ ืืืชื ืืื ืืฆืืืช, ืืื ืื ืื ืกืงืจืืคื ืฉืื ื ืืื ื ืืกืืคื ืฉื ืืืจ ื ืื ื ืืืื ืืืชืจ ืืื ืืจืืฉืืช ืืชืืงืื ืื ืื ืืื ืืื ืื ื ืืืื ืืืืืืฆืื ืืื ืจืืฆื ืืืฆืืข ืขืื ืจืขืืื ืืช ืืืฉืื.
1 420
# ืืขืื ืืืฆืืจื: ืืขืื, ืคืืชืจืื, ืืืืืช, ืืขืื
ืืฉืืฉ ืืขืื ืืืืจ ืืืืขื ืืขืฉืืช ืืื ืืืคืฉ ืคืืชืจืื. ืืฉืืฆืื ื ืืคืืชืจืื ืืคืชื ืืคื ืื ื ืืคืฉืจืืืืช ืืืืืืืช ืืืฉืืช, ืืืชื ื ืืื ืืืฆืืจ ืืืื ืืืฉืื ืฉืืืืืื ืืืขืืืช ืืืฉืืช.
ืืื ืืชื ืืืืจืื ืืช ืื - ืืื ืืจื ืจืก ืื ืืืฆืื ืืช ืืืื ืืจื ื ืืื ืฉืืืื ืืืขืืืจ ืืืืข ืืงืืืช ืืื ืืืฉืืื ืืกืืืื ืฉืื ืื, ืื ืฉืืจื ืืื ืฉืื ืืืชืืื ืืื ืืช ืืชืจืื ืืืคืชื ืืช ืืจืฉืช ืื ืฉืืฆืจ ืืื ืกืืฃ ืืขืืืช ืืืฉืืช.
ืืื ืืืชื ืืขืื ืงืืื ืื ืืงืื ืืืืื ืฉืื ื. ืขืืืื ืืืฉื ืขืฉืืื ืืืื ืืก ืืฉืืืจืช ืืืชืจ ืืืืื ืืขืืฉืื ืืืกืฃ ืืืืฆืจ ืืคืฉืจืืืืช ืืืฉืืช. ืคืจืืืงื ืฆื ืฉืื ืืช ืืืื ืืืชื ืืืฉืชืืฉ ืืืืื ืฉืืืื ืขื ืขืืฉืื ืื ืืืชื ืื ืืืืื ืืช ืื ืกืืช, ืืขืืฉืื ืืคืฉืจ ืืืฆืื ืขืื ืืงืืืืช ืืืฉืชืืฉ ืืื.
ืืืจืืง ืืื ืืื ืืืคืฉ ืืช ืืืขืื ืืืืงื ืืืชืืื ืฉืื, ืืืืคืืฉ ืคืืชืจืื ืืช ืืืฉืื ืืืขืืืช. ืืจืืจ ืฉืืฉ ืืจืื ืืขืืืช ืฉืืคืฉืจ ืืคืชืืจ ืืืจ ืืืชืจ ืืืืื ืฉืื ืื ื ืืืจ ืืืืจืื, ืืื ืจืื ืืืื ืืื ืืืืงื ืืืืฉื ืืืืฉื ืืืคืืชืจืื ืืช ืืืืฉืื ืฉืืชืืืื ืืช ืืชื ืืขื ืืืืืืื ืืกืืฃ ืืืืฆืืืช ืืืฉืืช.
1 420
# ืื ืจืง ืงืื
ืงืื ืืช ืืงืื ืืื ืืคื, ืฉืืื ืืืชื ืืืจืื ืืชืืืจื ืขืื 5 ืฉื ืื. ืืื ืขืืืื ืืืฉืืจ ืืคื? ืืื ืขืืืื ืืขืืื? ืืืื ืขืืืื ืื ืฉืืจืฆื ืืชืืืง ืืืชื? ืื ืืืื ืืืื.
ืื ืื ื ืืฉืชืืฉืื ืืงืื ืืื ืืืจืื ืืืืฉื ืืขืฉืืช ืืืจืื ืืฉืืืืื ืฉืืืฉืืื ืืฉืชื ืื, ืืืืจืื ืฉืื ืื ื ืฆืจืืืื ืืฉืชื ืื ืืื ืื ื ืืฉืชื ืื - ืืืื ืื ืืงืื ืฆืจืื ืืืฉืชื ืืช. ืจืื ืืืื ืื ืืฃ ืืื ืื ื ืืข ืืงืื 5 ืฉื ืื ืื ืื ืืืืจ ืฉืืงืื ืืื ืืืืืื ืืื ืืืืืง ืืืืคื, ืืงืื ืื ืื ืืจืืข ืฉืืืฃ ืืื ืืื ืืืืฅ ืืืขืช ืื. ืื ืืื ืคืืชืจ ืืช ืืืขืื ืืื ืืื ืืคืกืื ืืชืืืืงื.
ืืฉืื ืื ื ืืืืจืื ืฉ"ืงืื ืื ืจืง ืงืื" ืืืฉืืขืืช ืืื-
1. ืื ื ืงืฉืจื ื ืืงืื ืฉืืชืื ื. ืื ืื ื ื ืฉืื ืืื ืืช ืืืืฉ ืื ืื ืื ืื ืืืื ืื ืื ืื ื ืืืื ืฉื ืืืขืจืืช ืื ืื ืื ืืืืฉ ืืืืช ืชืฉืคืจ ืืช ืขืืืื ืืืขืจืืช.
2. ืื ืื ื ืืจืืฉ ืื ืื ืื ืื ืฉืืืคืฉืจื ืืฉื ืืช ืืช ืืงืื ืืฉื ืฆืืจื. ืืงืื ืื "ืืชืขื ืืช ืขืฆืื" ืืื ืืฉ ืืขืจืืช ืืืงืื ืฉืืกืืืจืืช ืื ืืืืจื ืฉื ืืงืื ืืื ืืคืื ืงืฆืืืช ืฆืจืืืืช ืืขืฉืืช. ืืฆืจื ื ืชืืื ืืืช ืืืืงื ืืื ืฉืืคืฉืจ ืืืื ืืฉื ืืช ืืืงืื ืืงืื ืืืืืื ืฉืื ืฉืืจื ื ืืืื.
3. ืื ืื ื ืืจืืฉ ืืช ืืชืงืฉืืจืช ืืชืื ืืงืื ืืืืื ืืขืืืื. ืขืืื ื ื Pair Programming ืืื ืืืืื ืฉืืคืืืช ืขืื ืื ืืื ืืื ืืืื ืืงืจืื ืืช ืื ืฉืืชืื ื. ืืฆืื ื ืืช ืืืขืืืช ืืืคืืชืจืื ืืช ืืืจืืืืื ืฉื ืืงืื ืืคืืจืื ืฉื ืืฆืืืช. ืงืืืื ื ืคืืืืง ืืื ืฉืื ืฉืื ืงืฉืืจืื ืืื ืื ืื ืื ืืกืคืฆืืคืืื ืขืืืื ืื ืื ื ืขืืืืื ืืื ืืืืื ืฉืืืื ืืืืืื ืืงืจืื ืืืชื ืืืืืจ ืขืืืื.
4. ืืงืคืื ื ืืืฉืชืืฉ ืืฉืคื ืื ืืชืงืช ืืืื ืืงืื. ืื ืื ื"ืงืื ืฉืื" ืื "ืืื ืืข ืฉื ืืจ", ืื "ืืืฉืง ืืืฉืชืืฉ", ื"ืื ืืข" ืื "ื API". ืืื ืฉื ืงืคืื ืืืืฆืื ืืช ืืืืชืืื ืืืงืื ืืืืคืื ืืืชื ืืชืืฆืืช ืขืืืื ืืฉืืชืคืช ืฉื ืื ืืฆืืืช ืื ืืืื ืงื ืืืชืจ ืืฉืชืฃ ืืืจืืืช, ืืฉืื ืืื ืืฉืืชื ืืฉืฆืจืื.
ืื ืจืง ืงืื. ืืืื ืื ื ืืชื ืื ืืืืืืฃ ืืช ืืชืงืฉืืจืช ืืืขืืืื ืืืฉืืชืคืช ืฉืื ื.
Endi mavjud! Telegram Tadqiqoti 2025 โ yilning asosiy insaytlari 
