cookie

نحن نستخدم ملفات تعريف الارتباط لتحسين تجربة التصفح الخاصة بك. بالنقر على "قبول الكل"، أنت توافق على استخدام ملفات تعريف الارتباط.

مشاركات الإعلانات
2 911
المشتركون
لا توجد بيانات24 ساعات
+157 أيام
+13330 أيام

جاري تحميل البيانات...

معدل نمو المشترك

جاري تحميل البيانات...

  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
  • Photo unavailable
👩‍💻 Sync.Pool в деталях: продолжение серии статей Phuong Le про сложные аспекты Go на простых иллюстрациях ☑️ Как sync.Pool связан с планировщиком или моделями PMG? ☑️ Что такое проблема false sharing? ☑️ Как устроен sync.Pool? ☑️ Как работает механизм «кражи» sync.Pool? ☑️ Почему «Любой элемент, хранящийся в пуле, может быть автоматически удален в любое время без уведомления»? 👉 Читать
إظهار الكل...
2🏆 1
👩‍💻 Range Over Function Types в Go 1.23 Текстовая версия выступления Ian Lance Taylor на GopherCon 2024 о том, почему эта фича была добавлена, что из себя представляет и как ее использовать. 👉 Читать
إظهار الكل...
Range Over Function Types - The Go Programming Language

A description of range over function types, a new feature in Go 1.23.

1
Photo unavailable
👩‍💻 Go sync.WaitGroup и проблема выравнивания: продолжение серии статей Phuong Le про сложные аспекты Go на простых иллюстрациях Интересно даже не то, как работает sync.WaitGroup, а то, как менялась его структура на протяжении многих версий. 👉 Читать
إظهار الكل...
🔥 2
Photo unavailable
👩‍💻🔥 Представлена новая версия TinyGo TinyGo — это фантастическая реализация Go на основе LLVM, ориентированная на микроконтроллеры и WebAssembly. Версия 0.33.0 приводит инструмент в соответствие со стандартами Go 1.23, добавляет поддержку WASI preview 2 и многое другое. 👉 Подробнее
إظهار الكل...
👍 1
Интерпретатор Golang, написанный на PHP https://github.com/tuqqu/go-php #golang #php #программирование
إظهار الكل...
GitHub - tuqqu/go-php: Toy Golang interpreter written in PHP

Toy Golang interpreter written in PHP. Contribute to tuqqu/go-php development by creating an account on GitHub.

😁 15👍 2
Вы наверняка знакомы со «стандартным» способом ветвления кода в зависимости от заданного значения:

switch a {
    case 1: 
        fmt.Println("1")
    case 2:
        fmt.Println("2")
    default:
        fmt.Println("default")
}
Так работает switch в Go и во многих других языках (за исключением того, что в Go не происходит перехода к последующим case). Но оператор switch может делать больше. Вот несколько кейсов. 1. Несколько значений в одном case. В case можно указать несколько значений для сопоставления:

switch a {
    case 1: 
        fmt.Println("1")
    case 2, 3, 4:
        fmt.Println("2, 3 или 4")
//  case 1,2:  // ошибка: дублирование case 1, дублирование case 2
//      fmt.Println("1 или 2")
}
Заданное значение может использоваться только в одном блоке case. Дублирование значений в case вызовет ошибку. 2. Инициализатор, как в цикле for. Вы можете инициализировать значение перед использованием его в switch. Область видимости переменной a ограничена конструкцией switch:

switch a := f(); a {
    case 1: 
        fmt.Println("1")
    case 2:
        fmt.Println("2")
}
3. Нет выражения switch, но есть выражения case. case не ограничен статическими значениями. Если вы опустите выражение switch, вы можете использовать выражения для каждого case:

switch {
    case a == 1: 
        fmt.Println("1")
    case a >=2 && a <= 4:
        fmt.Println("2")
    case a <= 5:
        fmt.Println("3")
}
Если текущее значение a совпадает более чем с одним case, выбирается первый подходящий. 4. Переключение по типу переменной. Если ваш код получает значение интерфейса из какого-то источника, вы можете использовать переключение по типу, чтобы проверить фактический тип этого значения:

switch v := a.(type) {
    case int: 
        fmt.Println("a — это int:", v)
    case string, []byte:
        fmt.Println("a — это string:", v)
}
5. Переключение по типу параметра. Это может показаться немного эзотерическим: вы можете определить дженерик функцию, где типовой параметр не используется в списке параметров. Вместо этого оператор switch может ссылаться на этот параметр, чтобы проверить значение параметра:

func do[T comparable](a any) {
    switch v := a.(type) {
    case int:
        fmt.Println("a — это int:", v)
    case T:
        fmt.Printf("a — это %T: %v", v, v)
    case []T:
        fmt.Println("a — это срез:", v)
    case []byte:
        fmt.Println("a — это срез байт:", v)
    }
}

func main() {
    do[bool](a)
    do[bool](true)
    do[int]([]int{1, 2, 3})
}
Как и с выражениями case, если фактический тип a совпадает с несколькими case, выбирается первый подходящий. 👉 Go Playground #tip
إظهار الكل...
Go Playground - The Go Programming Language

👍 8🔥 2 1
Photo unavailable
Приходи на митап True Tech Party от МТС Провожаем лето в компании CTO, тимлидов и руководителей разработки из МТС и не только, которые поделятся опытом в управлении командами и поговорят, какие хард- и софтскилы развивать, чтобы продвигаться по карьере. Спикеры расскажут, с какими ожиданиями сталкиваются тимлиды, как и какие решения принимают CTO, как строится обучающая среда для инженеров. Когда: 30 августа Где: Офлайн (Москва, парк Музеон) + онлайн Событие будет интересно разработчикам и начинающим руководителям в IT. Регистрируйся по ссылке. Присоединяйся! Реклама. Информация о рекламодателе
إظهار الكل...
Photo unavailable
The Algorithms - Go Алгоритмы, реализованные на GoLang Репозиторий представляет собой коллекцию имплементаций и демонстраций наиболее популярных алгоритмов, реализованных в Go. https://github.com/TheAlgorithms/Go @Golang_google
إظهار الكل...
🔥 5 2
Repost from Golang
Photo unavailable
🎊 Выпущены версии Go 1.22.6 и 1.21.13! 🔈 Анонс: https://groups.google.com/g/golang-announce/c/X4q_-Wf-5g4 ⬇️ Скачать: https://go.dev/dl/#go1.22.6 #golang @Golang_google
إظهار الكل...
🔥 1
Photo unavailable
👩‍💻 Generic collection types на Go: недостающая документация В Go 1.18 появились дженерики, но Zach Musgrave (разработчик в DoltHub) обнаружил, что практических примеров и документации по данной теме не хватает. Он провел несколько экспериментов и поделился тем, что узнал после многих часов работы. 📍 гайд
إظهار الكل...
👍 2🔥 2 1
اختر خطة مختلفة

تسمح خطتك الحالية بتحليلات لما لا يزيد عن 5 قنوات. للحصول على المزيد، يُرجى اختيار خطة مختلفة.