Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
FloydReme

Floydreme

Пишу музыку и программирую
  • 15
    вклад
  • 21
    вопрос
  • 24
    ответа
  • 63%
    решений
Комментарии
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Какие проекты писать в портфолио на C#?

    FloydReme
    Floydreme @FloydReme
    jacon1,
    вот мой репозиторий с лабораторной работой 2 курса в ИТМО, для изучения шарпов - очень даже
    Написано 18 мая 2022
  • Где грамотнее делать try/catch?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    WbICHA, да, это звучит валидно
    Спасибо большое
    Написано 02 мая 2022
  • Где грамотнее делать try/catch?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    WbICHA, допустим, есть endpoint для поиска сущности по id, я вызвал метод в сервисе, он обратился к репозиторию и тот выкинул ошибку. Зачем делать повторение кода и в сервисе, и на клиенте, если по факту ошибка одна, и на клиенте я должен реализовать новое поведение? В чем бенефит от валидации на уровне бизнес логики? Не очень понимаю(
    Написано 02 мая 2022
  • Где лучше разрабатывать приложения на PC(windows), macOS, Android и IOS?

    FloydReme
    Floydreme @FloydReme
    Возможно, поможет quasar
    Написано более года назад
  • Почему не обновляется состояние?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Спасибо
    Написано более года назад
  • Уроки по JavaScript?

    FloydReme
    Floydreme @FloydReme
    .javascript
    Написано более года назад
  • Как обновить компонент таблицы в vue js?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Aetae, добавил
    Написано более года назад
  • Как выравнять элементы?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Спасибо!
    Написано более года назад
  • Какую структуру данных выбрать для подсчета элементов?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Работает как часы, еще раз спасибо!
    Написано более двух лет назад
  • Какую структуру данных выбрать для подсчета элементов?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Спасибо большое! Сейчас попробую это реализовать
    Написано более двух лет назад
  • Какую структуру данных выбрать для подсчета элементов?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Sergey, удобство использования + время работы. Всего данных - чуть больше 7000
    Написано более двух лет назад
  • Какую структуру данных выбрать для подсчета элементов?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    дополню - мне придется хранить одновременно количество совпадений маршрута и его номер
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    briahas, Еще раз спасибо :)
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    briahas, Получилось! Я сделал вот такой код:
    var tableView: UITableView!
     var dataP: [PostData] = []
    ...
    override func viewDidLoad() {
            super.viewDidLoad()
            tableView = UITableView(frame: self.view.bounds, style: .grouped)
            tableView.delegate = self
            tableView.dataSource = self
          ...
            getPostData()
        }
    func getPostData() {
            var tempData = [PostData]()
            let databaseRef = Database.database().reference(withPath: "Посты")
            databaseRef.observe(.value) {(snapshot, error) in
                for child in snapshot.children {
                    let snap = child as! DataSnapshot
                    let res = snap.value as! [String: Any]
                    
                    let title = res["Заголовок"] as! String
                    let subtitle = res["Подзаголовок"] as! String
                    let img = res["URL"] as! String
                    let date = res["Дата"] as! String
                    tempData.append(PostData(title: title, subtitle: subtitle, imgURL: img, date: date))
                }
                self.dataP = tempData
                self.tableView.reloadData()
            }
        }
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    briahas, добрый день, вчера не было возможности сесть за комп, извините за ожидание. Пока никаких, буду щас пытаться
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    briahas, хорошо, спасибо :) Доброй ночи
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Если я вас правильно понимаю, то нужно что-то такое, да?
    struct storeData {
            var length: [PostData] = []
            var social:Social = Social()
            func update() {
                social.tableView.reloadData()
            }
        }
    func getPostData() -> [PostData] {
            var tempData = [PostData]()
            var data: storeData = storeData()
            let databaseRef = Database.database().reference(withPath: "Посты")
            databaseRef.observe(.value) {(snapshot, error) in
                for child in snapshot.children {
                    let snap = child as! DataSnapshot
                    let res = snap.value as! [String: Any]
                    
                    let title = res["Заголовок"] as! String
                    let subtitle = res["Подзаголовок"] as! String
                    let img = res["URL"] as! String
                    let date = res["Дата"] as! String
                    
                    //tempData.append(PostData(title: title, subtitle: subtitle, imgURL: img, date: date))
                    data.length.append(PostData(title: title, subtitle: subtitle, imgURL: img, date: date))
                    data.update()
                    //self.tableView.reloadData()
                }
            }
            return tempData
        }
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    briahas, сейчас будет максимально тупой вопрос (Новичок в Свифте :( ) - что за property? и где его писать
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    briahas, так как данная функция возвращает массив структур, то я планирую вызывать ее при создании ячеек таблицы (их данные будут храниться как раз в таких структурах). Для этого как минимум нужно узнать, сколько ячеек должно быть создано (return getPostData().count). Если я ее вызову, то будет 0, потому что, как я понимаю, массив tempData полон внутри функции парсинга, а если вызвать его глобально, то он будет пуст, как-то так...
    Написано более двух лет назад
  • Как хранить в глобальном массиве значения, полученные асинхронным путем?

    FloydReme
    Floydreme @FloydReme Автор вопроса
    Прошу прощения за ожидание. Я немного упростил код, и теперь у меня нет взаимодействия с классом TableViewCell, все происходит в Social.swift. Появилась другая проблема - из-за того, что у меня данные берутся асинхронно, а функция, которая парсит данные, по умолчанию Void, я не могу получить полный массив структур. Можно ли неччто такое же хитрое провести? Через указатели, например, если они есть в Swift

    func getPostData() -> [PostData] {
            var tempData = [PostData]()
            let databaseRef = Database.database().reference(withPath: "Посты")
            databaseRef.observe(.value) {(snapshot, error) in
                for child in snapshot.children {
                    let snap = child as! DataSnapshot
                    let res = snap.value as! [String: Any]
                    
                    let title = res["Заголовок"] as! String
                    let subtitle = res["Подзаголовок"] as! String
                    let img = res["URL"] as! String
                    let date = res["Дата"] as! String
                    
                    tempData.append(PostData(title: title, subtitle: subtitle, imgURL: img, date: date))
                    
                }
                self.tableView.reloadData()
                return tempData // out = ok
                
            }
            return tempData // out = []
        }
    Написано более двух лет назад
  • 1
  • 2
  • Следующие →
Самые активные сегодня
  • Drno
    • 24 ответа
    • 0 вопросов
  • CityCat4
    CityCat4
    • 7 ответов
    • 0 вопросов
  • mayton2019
    • 6 ответов
    • 0 вопросов
  • GNUBack
    • 6 ответов
    • 0 вопросов
  • vabka
    Василий Банников
    • 6 ответов
    • 0 вопросов
  • vovka3003
    Владимир Шаблий
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации