Кто-нибудь программирует на Go? Где-то в Казахстане используется в продакшине?
Не плохой язык, не смотря на то, что популярность его падает, свою нишу нашёл. Если нужно сделать какую-то маленькую программу и удобно закидывать на сервер - само то.
Единственно, обработка ошибок очёнь трудоёмкая. Порой большая часть кода состоит из этих обработчиков.
В Эрикссон, шведы к сожалению отказались от Go, и вернулись на С++ (друг работает там). Dropbox тоже отказался в пользу Rust, хотя был одним из первых кто перешёл на Go. И ещё несколько известных фирм.
Вообще ИМХО нормальному Программисту абсолютно без разницы на каком языке Программу писать
Скажут писать на Go - будет кодить на Go (ну потратит пару-тройку часов на чтение Документации ) в Чем проблема то?
ЗЫ Например, я про этот Go, узнал из Вашего поста часа полтора назад - ну потратил минут 40 на просмотр документации и еще 20 минут на переделку своего решения Задачки про Палиндромы с конкурса Преподавателей Программирования в Yandex c С++ на Golang
Получился такой вот код:
/*
Решение на языке программирования Golang
Задачки номер 4 для конкурса Преподавателей Программирования в Компанию Яндекс
Предложил: Богдан Козырев <t800@kvkozyrev.org>
*/
package main
import (
"bufio"
"fmt"
"os"
"strings"
"unicode/utf8"
)
var delim = []string{"\"", ":", "?", "!", ".", ";", ",", "*","-","—","(",")"}
func removeDelimUnicodeString(str string, delimiters []string) string {
var charSlice []rune
var result string = ""
// преобразуем в charSlice
for _, char := range str {
charSlice = append(charSlice, char)
}
// делаем проверку на разделители
for position, char := range charSlice {
for _, forbiddenChar := range delimiters {
if test := strings.Index(string(char), forbiddenChar); test > -1 {
replacement := rune(' ')
charSlice[position] = replacement
charSlice = append(charSlice[:position], charSlice[position:]...)
}
}
result = result + string(charSlice[position])
}
return result
}
var io = []string{"Ё", "ё"}
func replaceIOUnicodeString(str string, ios []string) string {
var charSlice []rune
var result string = ""
// преобразуем в charSlice
for _, char := range str {
charSlice = append(charSlice, char)
}
// делаем проверку на букы Ё и ё
for position, char := range charSlice {
for _, forbiddenChar := range ios {
if test := strings.Index(string(char), forbiddenChar); test > -1 {
replacement := rune('е')
charSlice[position] = replacement
charSlice = append(charSlice[:position], charSlice[position:]...)
}
}
result = result + string(charSlice[position])
}
return result
}
func Reverse(s string) string {
totalLength := len(s)
buffer := make([]byte, totalLength)
for i := 0; i < totalLength; {
r, size := utf8.DecodeRuneInString(s[i:])
i += size
utf8.EncodeRune(buffer[totalLength-i:], r)
}
return string(buffer)
}
func isPalindrome(input string) string {
input = strings.ToLower(input)
input = removeDelimUnicodeString(input, delim)
input = replaceIOUnicodeString(input,io)
input = strings.TrimSpace(input)
input = strings.Replace(input, " ", "", -1)
reverse := Reverse(input)
if input == reverse {
return "yes"
} else {
return "no"
}
}
func main() {
var n int
fmt.Scanf("%d\n", &n)
for i := 0; i < n; i++ {
consoleReader := bufio.NewReader(os.Stdin)
strochka, _ := consoleReader.ReadString('\n')
strochka = strings.TrimSuffix(strochka, "\n")
fmt.Println(isPalindrome(strochka))
}
}
Вот проверка:
Вот как бы так бы, а вы спрашиваете кто Пишет на Golang - пишет ИМХО конечно же то кто Программист
ЗЗЫ Ну а кто не Программист тот - как я думаю - ИМХО наверное ищет ДЕНЬГИ и Пишет письма Программистам что мол вот есть ТЗ и надо по нему по быстрому закодить что-то там на Go - Вот и все
Сообщение отредактировал T-800 Danya: 19.08.2018, 20:32:05
я про этот Go, узнал из Вашего поста часа полтора назад
Козырь, ну ты и тёмный
Ещё лет 5 назад (ты наверное, в школе учился), mail.ru продвигали Go активно. Даже вроде саму почту mail.ru на go перевели. Хотя сейчас среди вакансий про Go очень мало у них. Возможно, отазались.
Я хочу узнать, в продакшине где-то работает гоу у нас.
ЗЫ Судя по тому что вычитал в документацию ИМХО думаю, что маловероятно что его кто-то шибко использует - ну что разве что если какой-нибудь ДиреХтор крутой фанат Go и всех кодеров строит писать на Go. А Вы что тоже фанат Go ? И ещите единомышленников?
ЗЗЫ Ну если хотите могу еще что-нибудь для Вас наГодить - ну просто чтоб Вы не чувствовали себя одним-единственным Фанатом Go на весь Казахстан
Сообщение отредактировал T-800 Danya: 19.08.2018, 22:31:13
Напиши программу на Go, чтобы она следила за стабильностью работы браузера Chrome на Linux. В хроме сидит программа тяжёлая, которая обратабывает данные и периодически съедает 100% ресурсов, при обнаружении такого в течении пары минут, нужно тут же Хром перезагружать.
Э... Ну короче так сказать заГодил я эту мягко говоря программу ... Cейчас выложу чего получилось
Но язык действительно для Бандерлогов - while нет, перезагрузки функций сделать нельзя - Пришлось таких костылей нагородить , что прям даже не знаю... Потому что 2 goto метки в коде это конечно нечто. Более того скажу честно, что в моей практике это в первый раз что вообще использовал goto.
Сообщение отредактировал T-800 Danya: 21.08.2018, 01:06:17
На всем нам знаменитом видеопортале используется язык Go, поскольку видеопортал использует MySQL, то для горизонтального масштабирования БД MySQL используется vitess (это я недавно прочитал), до этого я прочитал в интернете что видеопортал написан на Java, Python, C/C++ и Go, и сначало я не понял причём тут Go... У меня есть своя соц. сеть, а в моей соц.сети есть свой видеопортал, как во всех современных соц.сетях, я начал изучать Go думая что он напрямую используется на видеопортале. Поскольку мой будущий видеопортал не будет масштабироваться, то и vitess и Go впринципе не нужен... Но я думаю что язык Go будет использоваться при написание App под новую OC - Fuchsia OS.
Вот я честно говорю вот мой видеопортал, который внедрён в мою соц.сеть, название соц.сети своей палить не буду, просто вот пруфы:
Скрытый текст
Видосы
Проигрывание видоса
Вот видео по теме Go + Vitess:
Скрытый текст
Сообщение отредактировал lexx821: 31.03.2019, 05:41:48