Перейти к содержимому

Фотография

Go, Golang


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 17

#1
Tuco

Tuco
  • В доску свой
  • 1 179 сообщений

Кто-нибудь программирует на Go? Где-то в Казахстане используется в продакшине?  

 

Не плохой язык, не смотря на то, что популярность его падает, свою нишу нашёл. Если нужно сделать какую-то маленькую программу и удобно закидывать на сервер - само то. 

 

Единственно, обработка ошибок очёнь трудоёмкая. Порой большая часть кода состоит из этих обработчиков.

 

В Эрикссон, шведы к сожалению отказались от Go, и вернулись на С++ (друг работает там). Dropbox тоже отказался в пользу Rust, хотя был одним из первых кто перешёл на Go. И ещё несколько известных фирм.

 

 


  • 0

#2
T-800 Danya

T-800 Danya
  • Свой человек
  • 653 сообщений

Кто-нибудь программирует на Go?

 

Э... Какая-то странная у Вас постановка вопроса.

Вообще ИМХО нормальному Программисту абсолютно без разницы на каком языке Программу писать matrix.gif

Скажут писать  на Go  - будет кодить на Go (ну потратит пару-тройку часов на чтение Документации morning.gif) в Чем проблема то? 

 

ЗЫ Например, я про этот  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 -  пишет ИМХО конечно же то кто Программист terminator.gif

 

ЗЗЫ  Ну а кто не Программист тот  - как я думаю -  ИМХО наверное ищет ДЕНЬГИ и  Пишет письма mail1.gif   Программистам  что мол вот есть ТЗ и надо  по нему по быстрому закодить gamer.gif что-то там на Go - Вот и все yes3.gif


Сообщение отредактировал T-800 Danya: 19.08.2018, 20:32:05

  • 0

#3
Tuco

Tuco
  • В доску свой
  • 1 179 сообщений

 я про этот  Go, узнал из Вашего поста часа полтора назад 

 

 

Козырь, ну ты и тёмный   :bow:   

 

Ещё лет 5 назад (ты наверное, в школе учился), mail.ru продвигали Go активно. Даже вроде саму почту mail.ru на go перевели. Хотя сейчас среди вакансий про Go очень мало у них. Возможно, отазались.

 

 

Я хочу узнать, в продакшине где-то работает гоу у нас.


  • 0

#4
Tuco

Tuco
  • В доску свой
  • 1 179 сообщений

https://rutracker.or...c.php?t=5506563

 

Даже лекция есть от Mail.ru про Go. Год 2017, видимо, Mail.ru работает на Go.


  • 0

#5
T-800 Danya

T-800 Danya
  • Свой человек
  • 653 сообщений

Козырь, ну ты и тёмный   :bow:

 
 
Неа... Я самый настоящий Светлый wizard.gif
 

Скрытый текст

 

ЗЫ Судя по тому что вычитал в  документацию ИМХО  думаю, что маловероятно что его кто-то шибко использует - ну что  разве что если какой-нибудь ДиреХтор крутой фанат Go и всех кодеров строит barb.gif писать на Go.  А Вы что тоже фанат give_heart.gif Go ? И ещите единомышленников? 

 

ЗЗЫ Ну если хотите могу еще что-нибудь для Вас  наГодить matrix.gif - ну просто  чтоб Вы не чувствовали себя одним-единственным Фанатом Go на весь Казахстан sad.gif

 

 

 

 

 

 

 

 
 


Сообщение отредактировал T-800 Danya: 19.08.2018, 22:31:13

  • 0

#6
Tuco

Tuco
  • В доску свой
  • 1 179 сообщений

Не то что фанат, но на удивление удобный язык. Хотя Роб Пайк, автор языка, канадец (как и создатель Java), криво косо некоторые вещи сделал.

 

Вообще читал, что изначально создавали его, чтобы индусы в гугле обучались быстрее. 

 

https://stackshare.io/go/in-stacks

 

Довольно много компаний на Go перешли, от Uber до Groupon.


Сообщение отредактировал Tuco: 19.08.2018, 22:28:58

  • 0

#7
T-800 Danya

T-800 Danya
  • Свой человек
  • 653 сообщений

Не то что фанат, но на удивление удобный язык. Хотя Роб Пайк, автор языка, канадец (как и создатель Java), криво косо некоторые вещи сделал.

 

Вообще читал, что изначально создавали его, чтобы индусы в гугле обучались быстрее. 

 

https://stackshare.io/go/in-stacks

 

Довольно много компаний на Go перешли, от Uber до Groupon.

 

 

Ну так за чем же дело стало? Скидывате ТЗ - давате Запилим matrix.gif какой-нибудь Продакшен на Go раз он такой удивление удобный.

Ведь вы же вроде как Профессиональный Стартапщик. big_boss.gif

ИМХО ни за что не поверю что у Вас нет какого-нибудь проекта Стартапа для Продакшена acute.gif


Сообщение отредактировал T-800 Danya: 19.08.2018, 22:41:39

  • 0

#8
Tuco

Tuco
  • В доску свой
  • 1 179 сообщений

Скидывате ТЗ - давате Запилим 

 

Напиши программу на Go, чтобы она следила за стабильностью работы браузера Chrome на Linux. В хроме сидит программа тяжёлая, которая обратабывает данные и периодически съедает 100% ресурсов, при обнаружении такого в течении пары минут, нужно тут же Хром перезагружать. 

 

Потом мне в ЛС ссылку на исходник закинь. 


  • 0

#9
T-800 Danya

T-800 Danya
  • Свой человек
  • 653 сообщений

Tuco

ОК. Хорошо. - Договорились! friends.gif

Сейчас что-нибудь для  Вам наГодим matrix.gif (правда думаю, что наверное видимо только Завтра - ибо сейчас,  к сожалению, уже Спать пора couch.gif  )

 

ЗЫ Хмм...  А вообще странные какие-то у Вам в Стартапах Задачи morning.gif  и что  в самом деле Вы на них Миллионы делаете?  doomguy.gif


Сообщение отредактировал T-800 Danya: 20.08.2018, 00:07:30

  • 0

#10
Tuco

Tuco
  • В доску свой
  • 1 179 сообщений

 А вообще странные какие-то у Вам в Стартапах Задачи 

 

Это Хром пересобранный, поисковой движок на базе хрома.


  • 0

#11
T-800 Danya

T-800 Danya
  • Свой человек
  • 653 сообщений

Э... Ну короче так сказать  заГодил я эту мягко говоря программу ... Cейчас выложу чего получилось

 

Но язык действительно для Бандерлогов mamba.gif - while нет, перезагрузки функций сделать нельзя   inquis.gif - Пришлось таких костылей нагородить ireful1.gif, что прям даже не знаю... Потому что  2 goto метки в коде это конечно нечто. gamer3.gif Более того скажу  честно, что в моей практике это в первый раз что вообще использовал goto. cactus.gif


Сообщение отредактировал T-800 Danya: 21.08.2018, 01:06:17

  • 0

#12
T-800 Danya

T-800 Danya
  • Свой человек
  • 653 сообщений

Так ну вот собственно Видео с работой проги



Исходник я вас скинул (см. Ссылку в личке). Так что так вот yes3.gif

Да кстати, я что вам хотел сказать - чисто как Фанат Go terminator.gifФанату Go barb.gif

Мы тут - как Вы наверное - слышали Благотворительный  Проектик  на Благо Сообществу пилим download.gif

см. https://vse.kz/topic...iaz/?p=35582546
    http://gamelance.info/
    http://t800.kvkozyrev.org/donat-2.html
   
Так что если у Вас как-нибудь найдется какая-нибудь возможность  как-либо оказать Нашему Проекту содействие были бы Вам чрезвычайно Признательны give_heart.gif

С глубоким к Вам уважением Богдан


Сообщение отредактировал T-800 Danya: 21.08.2018, 04:11:41

  • 0

#13
lexx821

lexx821
  • Свой человек
  • 816 сообщений

Я изучаю этот язык программирования, я слышал что в будущем можно будет программировать Apps под новую мобильную операционную систему FuchsiaOS.


  • 0

#14
lexx821

lexx821
  • Свой человек
  • 816 сообщений

На всем нам знаменитом видеопортале используется язык 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

  • 1

#15
lexx821

lexx821
  • Свой человек
  • 816 сообщений

Попробывал Go, очень легко можно написать программу, можно создавать свои пакеты (packages), можно работать с БД, можно создать свой веб сервер.

 

Вот примеры которые я опробывал:

Скрытый текст

  • 0

#16
Малик Жарыков

Малик Жарыков
  • Гость
  • 7 сообщений

Попробывал Go, очень легко можно написать программу, можно создавать свои пакеты (packages), можно работать с БД, можно создать свой веб сервер.

 

Вот примеры которые я опробывал:

Скрытый текст

 

Синтаксис пахнет джавой, если бы к ней прикрутили вывод типов и видно что язык посыпан приправой с нотками Си ))


  • 0

#17
ШАМАН1

ШАМАН1
  • Читатель
  • 112 сообщений

новую мобильную операционную систему FuchsiaOS.

 

а кто ее анонсировал



#18
Prinydchik

Prinydchik
  • Завсегдатай
  • 193 сообщений


  • 0


Количество пользователей, читающих эту тему: 1

пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.