Gopher Academy
🔴آشنایی با Test Coverage در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵 واسه شروع کار این سه پست زیر رو اول بخونید 🔵 Code Coverage / Test Coverage / Branch Coverage / Path Coverage 🟡 https://t.me/gopher_academy/397 🟡 https://t.me/gopher_academy/398…
🔵 Using the -cover flag🔵
🟡 خوب برای اجرا دستور زیر را وارد کنید:👇🏻
🟢 go test -cover
🟡 خروجی👇🏻
PASS
coverage: 66.7% of statements
ok github.com/mrbardia72/covtes 0.006s
🟡 این ۶۶ درصد بیانگر این هست که 66.7٪ درصد کد مارو پوشش قرار داده توسط test case ها
🟡 در حالی که این مقدار 66.7٪ می تواند به ما بگوید که چه مقدار از کد خود را آزمایش کرده ایم ، اما به ما دقیقاً نشان نمی دهد که در کد مسیرهایی را داریم یا آزمایش نکرده ایم.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🟡 خوب برای اجرا دستور زیر را وارد کنید:👇🏻
🟢 go test -cover
🟡 خروجی👇🏻
PASS
coverage: 66.7% of statements
ok github.com/mrbardia72/covtes 0.006s
🟡 این ۶۶ درصد بیانگر این هست که 66.7٪ درصد کد مارو پوشش قرار داده توسط test case ها
🟡 در حالی که این مقدار 66.7٪ می تواند به ما بگوید که چه مقدار از کد خود را آزمایش کرده ایم ، اما به ما دقیقاً نشان نمی دهد که در کد مسیرهایی را داریم یا آزمایش نکرده ایم.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آشنایی با Test Coverage در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵 واسه شروع کار این سه پست زیر رو اول بخونید 🔵 Code Coverage / Test Coverage / Branch Coverage / Path Coverage 🟡 https://t.me/gopher_academy/397 🟡 https://t.me/gopher_academy/398…
🔵 Visualizing Coverage🔵
🟡خوب برای این که خروجی کار روی توی مرورگر
🟡ببینیم دستور زیر رو اول بزنید
🟢go test -coverprofile=all.out
🟡بعدش دستور زیر
🟢go tool cover -html=coverage.out
🟡زمانی که دستور فوق رو میزنید با تصویر بالا روبه رو می شوید
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🟡خوب برای این که خروجی کار روی توی مرورگر
🟡ببینیم دستور زیر رو اول بزنید
🟢go test -coverprofile=all.out
🟡بعدش دستور زیر
🟢go tool cover -html=coverage.out
🟡زمانی که دستور فوق رو میزنید با تصویر بالا روبه رو می شوید
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Go 1.16.1 and 1.15.9 have been released!
🔐 A security fix for encoding/xml (CVE-2021-27918), archive/zip (CVE-2021-27919)
📢 Announcement: https://t.co/qgkC1kh9JC
⬇️ Download: https://t.co/tp0591yoMS
#golang
🔰 @gopher_academy
🔐 A security fix for encoding/xml (CVE-2021-27918), archive/zip (CVE-2021-27919)
📢 Announcement: https://t.co/qgkC1kh9JC
⬇️ Download: https://t.co/tp0591yoMS
#golang
🔰 @gopher_academy
golang.org
Downloads - The Go Programming Language
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
🎆 Go 1.16.2 and 1.15.10 are released!
📢 Announcement: https://t.co/79KoT1kEQA
⬇️ Download: https://t.co/wOMs5iS5N4
#golang https://t.co/hrrahJ5SAc
🔰 @gopher_academy
📢 Announcement: https://t.co/79KoT1kEQA
⬇️ Download: https://t.co/wOMs5iS5N4
#golang https://t.co/hrrahJ5SAc
🔰 @gopher_academy
golang.org
Downloads - The Go Programming Language
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
Forwarded from Gopher Academy
Concurrency in Go-226.pdf
1.7 MB
🔴آشنایی با Benchmark Test در گولنگ و نحوه تست آن🔴
❌در ادامه آموزش خواهیم داد
🔵introduction to Benchmark
🟡 https://t.me/gopher_academy/729
🔵 A Simple Benchmark Test
🟡 https://t.me/gopher_academy/730
🟡 https://t.me/gopher_academy/731
🟡 https://t.me/gopher_academy/732
🔵 The -run Flag
🟡 https://t.me/gopher_academy/733
🔵 Increasing the Complexity.
🟡 https://t.me/gopher_academy/734
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌در ادامه آموزش خواهیم داد
🔵introduction to Benchmark
🟡 https://t.me/gopher_academy/729
🔵 A Simple Benchmark Test
🟡 https://t.me/gopher_academy/730
🟡 https://t.me/gopher_academy/731
🟡 https://t.me/gopher_academy/732
🔵 The -run Flag
🟡 https://t.me/gopher_academy/733
🔵 Increasing the Complexity.
🟡 https://t.me/gopher_academy/734
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔵introduction to Benchmark🔵
🟢 بنچمارک (Benchmark) به زبانی ساده، به معنای استاندارد و یا مجموعهای از استانداردها است که میتواند معیاری برای اندازه گیری و سنجش عملکرد یک قطعه، یک ویژگی، یک برنامه و یا یک قابلیت در حوزههای مختلف، قرار گیرد.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🟢 بنچمارک (Benchmark) به زبانی ساده، به معنای استاندارد و یا مجموعهای از استانداردها است که میتواند معیاری برای اندازه گیری و سنجش عملکرد یک قطعه، یک ویژگی، یک برنامه و یا یک قابلیت در حوزههای مختلف، قرار گیرد.
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آشنایی با Benchmark Test در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵introduction to Benchmark 🟡 https://t.me/gopher_academy/729 🔵 A Simple Benchmark Test 🟡 https://t.me/gopher_academy/730 🟡 https://t.me/gopher_academy/731 🟡 https://t.me/gopher_academy/732…
🔵 A Simple Benchmark Test🔵
🟢 در Go ، تست های Benchmark را می توان همراه با unit test نوشت.
🟢 توابع Benchmark باید با پیشوند "Benchmark" نوشته شود و به دنبال آن نام تابع ، به همان روشی که برای unit test استفاده می کنیم
🟢 اما اجرا آنها متقاوت هست
👇🏻❌👇🏻به تکه کد زیر توجه کنید👇🏻❌👇🏻
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🟢 در Go ، تست های Benchmark را می توان همراه با unit test نوشت.
🟢 توابع Benchmark باید با پیشوند "Benchmark" نوشته شود و به دنبال آن نام تابع ، به همان روشی که برای unit test استفاده می کنیم
🟢 اما اجرا آنها متقاوت هست
👇🏻❌👇🏻به تکه کد زیر توجه کنید👇🏻❌👇🏻
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آشنایی با Benchmark Test در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵introduction to Benchmark 🟡 https://t.me/gopher_academy/729 🔵 A Simple Benchmark Test 🟡 https://t.me/gopher_academy/730 🟡 https://t.me/gopher_academy/731 🟡 https://t.me/gopher_academy/732…
🟢 این توابع با نام Benchmark شروع می شوند
🟢 ازکتابخانه testing برای اجرا استفاده می کند
🟢 مقدار b.N هر بار افزایش می یابد تا زمانی که معیاری از stability برسد.
🟢 هر Benchmark باید کد را تحت آزمایش b.N بار اجرا کند.
👇🏻👇🏻❌نحوه اجرا❌👇🏻👇🏻
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🟢 ازکتابخانه testing برای اجرا استفاده می کند
🟢 مقدار b.N هر بار افزایش می یابد تا زمانی که معیاری از stability برسد.
🟢 هر Benchmark باید کد را تحت آزمایش b.N بار اجرا کند.
👇🏻👇🏻❌نحوه اجرا❌👇🏻👇🏻
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آشنایی با Benchmark Test در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵introduction to Benchmark 🟡 https://t.me/gopher_academy/729 🔵 A Simple Benchmark Test 🟡 https://t.me/gopher_academy/730 🟡 https://t.me/gopher_academy/731 🟡 https://t.me/gopher_academy/732…
🟢 اجرای کد فوق به صورت عکس فوق
❌ go test -bench=.
کامند فوق تمام متد Benchmark ها رو اجرا می کنه
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌ go test -bench=.
کامند فوق تمام متد Benchmark ها رو اجرا می کنه
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آشنایی با Benchmark Test در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵introduction to Benchmark 🟡 https://t.me/gopher_academy/729 🔵 A Simple Benchmark Test 🟡 https://t.me/gopher_academy/730 🟡 https://t.me/gopher_academy/731 🟡 https://t.me/gopher_academy/732…
🔵 The -run Flag🔵
❌کد فوق رو درنظر بگیرید
🟢برای اجرای متد TestCalculate به صورت زیر عمل می کنیم
❌ go test -run=Calculate -bench=.
🟢برای اجرای متد BenchmarkCalculate به صورت زیر عمل می کنیم
❌ go test -run=Bench -bench=.
🟢برای اجرای جداگانه تست هامون از -run Flag استفاده می کنیم
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌کد فوق رو درنظر بگیرید
🟢برای اجرای متد TestCalculate به صورت زیر عمل می کنیم
❌ go test -run=Calculate -bench=.
🟢برای اجرای متد BenchmarkCalculate به صورت زیر عمل می کنیم
❌ go test -run=Bench -bench=.
🟢برای اجرای جداگانه تست هامون از -run Flag استفاده می کنیم
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Gopher Academy
🔴آشنایی با Benchmark Test در گولنگ و نحوه تست آن🔴 ❌در ادامه آموزش خواهیم داد 🔵introduction to Benchmark 🟡 https://t.me/gopher_academy/729 🔵 A Simple Benchmark Test 🟡 https://t.me/gopher_academy/730 🟡 https://t.me/gopher_academy/731 🟡 https://t.me/gopher_academy/732…
🔵 Increasing the Complexity. 🔵
🟢 به طور معمول ، شما می خواهید برنامه های خود را با انواع ورودی های مشخص محک بزنید. شما می خواهید ویژگی های performance برنامه خود را تحت تعدادی سناریوی مجزا و واقعی اندازه گیری کنید.
🟢ما از تابع محاسبه مثال قبلی خود استفاده خواهیم کرد و این بار مجموعه ای از benchmarks های مختلف را اضافه خواهیم کرد که ورودی های مختلف را آزمایش کنند
🟢 بنابراین ، در اینجا ما 3 عملکرد مشخص Benchmark را ایجاد کرده ایم که با انواع مختلف ورودی ، فراخوانی Benchmark را می خوانند.
🟢این به ما اجازه می دهد که بین عملکردهای مختلف تفاوت عملکردی داشته باشیم
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🟢 به طور معمول ، شما می خواهید برنامه های خود را با انواع ورودی های مشخص محک بزنید. شما می خواهید ویژگی های performance برنامه خود را تحت تعدادی سناریوی مجزا و واقعی اندازه گیری کنید.
🟢ما از تابع محاسبه مثال قبلی خود استفاده خواهیم کرد و این بار مجموعه ای از benchmarks های مختلف را اضافه خواهیم کرد که ورودی های مختلف را آزمایش کنند
🟢 بنابراین ، در اینجا ما 3 عملکرد مشخص Benchmark را ایجاد کرده ایم که با انواع مختلف ورودی ، فراخوانی Benchmark را می خوانند.
🟢این به ما اجازه می دهد که بین عملکردهای مختلف تفاوت عملکردی داشته باشیم
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
Final Results
67%
خوب
33%
متوسط
0%
ضعیف
Final Results
60%
خوب
40%
متوسط
0%
بد
✅ مجموعه سری آموزشی تست نویسی و اجرا آن
🔴آشنایی با Benchmark Test
🟡 https://t.me/gopher_academy/728
🔴آشنایی با Test Coverage
🟡 https://t.me/gopher_academy/717
🔴آشنایی با unitTest
🟡 https://t.me/gopher_academy/684
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴آشنایی با Benchmark Test
🟡 https://t.me/gopher_academy/728
🔴آشنایی با Test Coverage
🟡 https://t.me/gopher_academy/717
🔴آشنایی با unitTest
🟡 https://t.me/gopher_academy/684
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
کانال ما چهارشنبه ۸ مرداد سال ۹۹ شروع به فعالیت توی زمینه زبان برنامه نویسی گولنگ کرده و هدفش آموزش این زبان و نکات کلیدی بود نظرتون در مورد محتوا کانال چیه؟نظر سنجی آخر سال
Final Results
26%
عالی
32%
خوب
20%
متوسط
22%
ضعیف
✅تلگرام با قابلیت چت صوتی در کانالها به روز شد؛ رقابت تنگاتنگ با کلابهاوس
🔴تلگرام سه ماه قبل از قابلیت چت صوتی برای گروهها رونمایی کرد و حالا با ارائه نسخه جدید آن با عنوان Voice Chat 2.0 مهیای رقابت گستردهتر با اپلیکیشن کلابهاوس میشود که این روزها سر و صدای زیادی به پا کرده است.
🔴درواقع Voice Chat 2.0 که ساعاتی قبل در تلگرام ۷.۶ ارائه شد، امکان چت صوتی در گروهها و کانالها را بدون محدودیت در شمار اعضا فراهم میکند. تلگرام به میزبان چتهای صوتی اجازه میدهد تا میلیون ها نفر را پذیرا باشند و به همین دلیل از این ویژگی به عنوان رادیوی قرن ۲۱ یاد کرده است.
🌐مرجع تخصصی برنامه نویسان
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
🔴تلگرام سه ماه قبل از قابلیت چت صوتی برای گروهها رونمایی کرد و حالا با ارائه نسخه جدید آن با عنوان Voice Chat 2.0 مهیای رقابت گستردهتر با اپلیکیشن کلابهاوس میشود که این روزها سر و صدای زیادی به پا کرده است.
🔴درواقع Voice Chat 2.0 که ساعاتی قبل در تلگرام ۷.۶ ارائه شد، امکان چت صوتی در گروهها و کانالها را بدون محدودیت در شمار اعضا فراهم میکند. تلگرام به میزبان چتهای صوتی اجازه میدهد تا میلیون ها نفر را پذیرا باشند و به همین دلیل از این ویژگی به عنوان رادیوی قرن ۲۱ یاد کرده است.
🌐مرجع تخصصی برنامه نویسان
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
✅نحوه استفاده از JSON با Go✅
❌در ادامه آموزش خواهیم داد
🔴Default types
🟡 https://t.me/gopher_academy/743
🔴Encode (marshal) struct to JSON
🟡 https://t.me/gopher_academy/744
🔴Pretty print
🟡 https://t.me/gopher_academy/745
🔴Decode (unmarshal) JSON to struct
🟡 https://t.me/gopher_academy/746
🔴Arbitrary objects and arrays
🟡 https://t.me/gopher_academy/747
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy
❌در ادامه آموزش خواهیم داد
🔴Default types
🟡 https://t.me/gopher_academy/743
🔴Encode (marshal) struct to JSON
🟡 https://t.me/gopher_academy/744
🔴Pretty print
🟡 https://t.me/gopher_academy/745
🔴Decode (unmarshal) JSON to struct
🟡 https://t.me/gopher_academy/746
🔴Arbitrary objects and arrays
🟡 https://t.me/gopher_academy/747
➖➖➖➖➖➖➖➖➖
🔰 @gopher_academy