Gopher Academy
3.34K subscribers
918 photos
40 videos
279 files
1.99K links
🕸 Gopher Academy

🔷interview golang
https://github.com/mrbardia72/Go-Interview-Questions-And-Answers

حمایت مالی:
https://www.coffeete.ir/mrbardia72

ادمین:
@mrbardia72
Download Telegram
👇👇👇👇👇
https://t.me/gopher_academy/1408

🔰 @gopher_academy
👍4
How do we design a permission system? The diagram below lists 5 common ways. 👇

1. ACL (Access Control List)
ACL is a list of rules that specifies which users are granted or denied access to a particular resource.

Pros - Easy to understand.
Cons - error-prone, maintenance cost is high

2. DAC (Discretionary Access Control)
This is based on ACL. It grants or restricts object access via an access policy determined by an object's owner group.

Pros - Easy and flexible. Linux file system supports DAC.
Cons - Scattered permission control, too much power for the object’s owner group.

3. MAC (Mandatory Access Control)
Both resource owners and resources have classification labels. Different labels are granted with different permissions.
Pros - strict and straightforward.
Cons - not flexible.

4. ABAC (Attribute-based access control)
Evaluate permissions based on attributes of the Resource owner, Action, Resource, and Environment.
Pros - flexible 
Cons - the rules can be complicated, and the implementation is hard. It is not commonly used.

5. RBAC (Role-based Access Control)
Evaluate permissions based on roles
Pros - flexible in assigning roles.

🔰 @gopher_academy
👍8
An awesome collection of content for developers trying to bootstrap their SaaS business.
مجموعه ای عالی از محتوا برای توسعه‌دهندگانی که سعی در راه اندازی کسب و کار SaaS خود دارند.

#SAAS #PAAS #awesome #collection #opensource #github #business #free #book #material

https://saas4devs.tech


🔰 @gopher_academy
👍3🥰2
var x = []int{2: 5, 6, 0: 7}

fmt.Println(x)
Anonymous Quiz
46%
[7 0 5 6]
54%
[7 6 5]
👍10🔥31
What does the following program print?
package main

func f() bool {
return false
}

func main() {
switch f()
{
case true:
println(1)
case false:
println(0)
}
}
🔥6👍2
const
⁉️What does the following program print?

package main

const X = 3

func main() {
const (
X = X + X
Y
)

println(X, Y)
}


⁉️Choices:

1️⃣ 6 6
2️⃣ 6 12


🔰 @gopher_academy
👍5🤔4
function call
⁉️ What is the behavior of the following program?

package main

func f(vs ...interface{}) {
print(len(vs))
}

func main() {
f()
f(nil)
f(nil...)
}


⁉️Choices:

1️⃣ 0 0 0
2️⃣0 1 0
3️⃣ 0 1 1


🔰 @gopher_academy
👍4
📥 دریافت شده از:
Hamidreza Hosseinkhani
-------------

بیشتر ما از Redis به عنوان یک data store برای نگه‌داشت داده‌ها در حافظه رم مثلا به عنوان cache استفاده کردیم و از سرعت و پرفورمنسش به وجد اومدیم.

اما خیلی از قابلیت‌های دیگه که به کمک ماژول ها به این ابزار قدرتمند اضافه میشن رو دست کم گرفتیم.

ویژگی‌هایی مثل

▶️full text search
▶️secondary indexing
▶️aggregation
▶️geo filtering
▶️fuzzy search
▶️time series analysis

▶️deep learning model serving

▶️bloom filter و gaph analysis

▶️vector similarity searches
...

پیشنهاد میکنم به جای خود Redis همین الان Redis Stack (شامل ردیس و چند ماژول کاربردی) رو نصب کنید و قابلیت های مختلفش رو امتحان کنید.

🔰 @gopher_academy
13👍1
💚🤍❤️
#مهسا_امينی
💚🤍❤️
29🤯2🕊2🤔1
😳😳
🤯7👎2🎉2🤔1
🍴پکیج Forker

با استفاده از این پکیج می توانید درخواست های سمت سرور http را همزمان بین child process های تقسیم کنید و اینکار باعث پردازش سریعتر درخواست های همزمان می شود.

https://github.com/Ja7ad/forker

🔰 @gopher_academy
👍10🤔51👎1🕊1
📌 ابزار fieldalignment برای از بین بردن سریع padding aligment ها

با استفاده از این ابزار می توانید padding های داخل struct را از بین ببرید تا حافظه کمتری در مموری اشتغال شود.

go install golang.org/x/tools/go/analysis/passes/fieldalignment/cmd/fieldalignment@latest


🔰 @gopher_academy
👍8🕊2
دوستان چند وقتی هست یک کتابخانه با نام pgp نوشتم که چندین Payment gateway provider رو پشتیبانی کنه نظیر زرین پال و ...

فعلا کلاینت و زرین پال رو نوشتم ولی وقت نکردم تست کامل بنویسم و تست بگیرم

اگر مایل به مشارکت بودین خیلی خوشحال میشم تا بتونم این کتابخانه رو تکمیل کنم و از تجربه و ایده های شما عزیزان هم استفاده کنم

https://github.com/Ja7ad/pgp

.
👍10🕊2🤔1
📌 How to reflect type parameter in generics?


🔰 @gopher_academy
3🕊2👍1👎1
#code_time

در کد بالا چه اتفاقی صورت گرفته؟ (عنوان مناسب با توضیحات کامنت کنید)

https://go.dev/play/p/Fd7hi5tpAIN


🔰 @gopher_academy
👍2🤔2🕊2
سایت stackoverflow بصورت آفلاین (۷۰ گیگ)

https://download.kiwix.org/zim/stack_exchange/stackoverflow.com_en_all_2022-05.zim


🔰 @gopher_academy
👍4🕊2