iOS Стэнфордский курс. Swift. Объяснение на русском. Лекция 1
HTML-код
- Опубликовано: 4 сен 2024
- Объяснение первой лекции Стэнфордского курса по iOS разработке. Swift.
Для изучения Swift рекомендую чат the swift developers
t.me/joinchat/...
от RUclips канала the swift developers
/ @theswiftdevelopers1301
Ссылка на чат в Telegram:
t.me/swiftbook...
Эта лекция будет основываться на создании программы(игры), которая называется “Концентрация”.
Мы научимся:
- Cоздавать проект в программе Xcode
- Создавать визуальную часть программы UI
- Подключать визуальные части программы к коду
- Давать функционал визуальным частям путем написания кода
В коде будем использовать:
- Constants and Variables
- If
- Arrays
- Functions
- Property Observers
- Optionals
- Optional Binding
ТАЙМКОДЫ:
00:12 Введение. О чем будет лекция и что мы выучим
02:14 Какой код мы будем прописывать
02:49 Начало лекции. Как создать новый проект в Xcode
06:45 Что такое Main.storyboard и ViewController
09:29 Как установить программу себе на телефон
10:08 Как создать визуальные части программы (кнопки, картинки, лейблы)
16:14 Как подключить визуальные части программы к коду
22:08 Как правильно менять названия к объектам, которые были подключены к коду из Main.storyboard
24:17 Начинаем писать код
24:55 Переменная для подсчета количества нажатий на кнопки
27:26 Как использовать Property Observers (“Наблюдатели”)
28:35 Как написать код чтобы кнопка переворачивалась. Написание функции
35:35 Как сделать так, чтобы у каждой кнопки была своя картинка
38:52 Использование Optionals. Поиск по индексам
41:52 Развертывание опционального типа. Использование Force Unwrap
45:16 Optional Binding
47:17 Повторение написанного кода
ТАЙМКОДЫ:
00:12 Введение. О чем будет лекция и что мы выучим
02:14 Какой код мы будем прописывать
02:49 Начало лекции. Как создать новый проект в Xcode
06:45 Что такое Main.storyboard и ViewController
09:29 Как установить программу себе на телефон
10:08 Как создать визуальные части программы (кнопки, картинки, лейблы)
16:14 Как подключить визуальные части программы к коду
22:08 Как правильно менять названия к объектам, которые были подключены к коду из Main.storyboard
24:17 Начинаем писать код
24:55 Переменная для подсчета количества нажатий на кнопки
27:26 Как использовать Property Observers (“Наблюдатели”)
28:35 Как написать код чтобы кнопка переворачивалась. Написание функции
35:35 Как сделать так, чтобы у каждой кнопки была своя картинка
38:52 Использование Optionals. Поиск по индексам
41:52 Развертывание опционального типа. Использование Force Unwrap
45:16 Optional Binding
47:17 Повторение написанного кода
Ссылка на чат в Telegram:
t.me/swiftbookstart_chat
Здравствуйте! Подскажите пожалуйста, сейчас в 2023 актуален данный курс? Ведь добавили SwiftUI .. (Я конкретный новичок) ищу хороший курс для IOS разработки
Я искал тебя 2 месяца. Натыкался на некудышные обзоры и уроки, которые для новичка непонятны. Ты первый, кто все понятно и подробно рассказывает. Продолжай в том же духе. На тебя стоит колокольчик и отдельная сохраненная папка для моей учебы. Просто лучший!
начинаю изучать свифт и очень интересно чего вы добились за 2 года, помогли ли вам эти курсы?
@@azotmuhamed сильно сомнеюваюсь,судя по сотням таких же вопросов на ютюбе без ответа)90% людей кидают это занятие более чем уверен
Вы молодец! Сейчас, это сотни просмотров, но через опр. кол-во времени, будет десятки тысяч! Эти лекции до сих пор актуальны и я считаю, что они самые лучшие для старта новичка в программировании! Многие Senior программисты рекомендуют эти курсы начинающим, но почти все новички вообще ничего не понимают то, о чем говорят в оригинале, и это плохо!( Главное, не останавливайтесь и продолжайте переводить и объяснять эти лекции, и почаще бы!
как в воду смотрел)
116 тысяч просмотров)
Молодец! Не теряйся доделай до конца, что начал, ни кто до конца так и не до обучал )
Братан, огромное спасибо за урок! Читаю параллельно Василия Усова - 200 страница, просто не выдерживаю, иду на ютубе в поисках практики и тут такой годный контент!
как успехи? за год выучили что-то или бросили? читаю тоже книгу Усова и супер тяжело вникать
Очень понятно объясняете, продолжайте в том же духе, ждём новых уроков))
Достаточно полезный материал. Работаю 2 года JS девелом, очень стала интересна разработка под мобилу, поизучал React Native и понял что на нем далеко не уехать. Думаю начать изучать Swift :) Подпишусь буду следить за уроками.
Вы прирожденный учитель! Спасибо за ваш курс :)
Все что я учил месяцами,я узнал за 50 минуТ 😀
Спасибо большое за разбор лекции. Когда увидел название "Стэнфордский курс", боялся даже открывать, думал будет что-то нереально сложное и непонятное, но благодаря автору все очень доступно!!!
Очень актуальная тема... (по крайней мере для меня) главное не прекращать это доброе начинание. Я тут впервые и очень доволен что нашел вас, а вы есть на патреоне или где то где можно донатить ?
Рад, что мои видео Вам помогают)))) Лучший донат - это лайк и комментарий под видео
@@ivanskorokhod2959 Святой человек
@@ivanskorokhod2959 спасибо за уроки
Спасибо огромное. Прошел курс по Swift для начинающих, но пару месяцев не практиковался и все забыл. Очень надеюсь, что смогу все повторить и изучить что-нибудь новое по вашим урокам. Еще раз огромное спасибо)
Как создать квадратик в котором выбираешь цвет? Делаю как в видео нет такой опции чтобы появился квадратик для цвета
Не получилось у тебя?
@@just44un29 нет не смог
@@imaginestudio1787 button.backgroundColor = #colorLiteral(
если у вас xcode13 то вот так
@@user-gu3vn5ls7v спасибо
У меня тоже н получается(
Огромное спасибо! Отличная подача материала, такие видео на русском языке на вес золота.
Спасибо Вам огромное за Ваши труды!!!
Я наконец-то начал, что-то понимать!!! Спасибо!!!
Иван, спасибо за качественные видеоуроки!
Продолжайте в том же духе!
Снимаю шляпу, Маэстро! Спасибо большое
Большое вам спасибо
Красава! Продолжай в том же духе!
very nice lesson thanks
Супер! Спасибо огромное за Ваши видео уроки!
спасибо за видосы! начинаю изучать swift, очень полезный контент, лайк и подписка)
10/10 Спасибо огромное!!
рекомендую
бомба!
Спасибо за видео.
Ты большой молодец! Пожалуйста, продолжай!
Лайк авансом! Спасибо огромное!
Ребята, помогите пожалуйста, кто столкнулся с такой же проблемой как и я. Когда выбираем button.backgroundColor = (и вот тут мы должны вставить палитру, которая вызывается командой colorLiteral, но проблема в том, что ее нет ни в списке предлагаемых, не даже если прописать в ручную, у автора видео есть, а у меня нет)
можно написать UIColor поставить точку и выбрать цвет. Ещё можно использовать #colorLiteral()
Если не будет получаться или будут ещё какие-то вопросы - сделайте скриншот Вашего кода и отправьте его в группу, что в описании под видео
@@ivanskorokhod2959 После ввода #colorliteral() подтянулось изображение "квадрата" с выбором палитры. Спасибо.
@@ivanskorokhod2959 здравствуй, через #colorLiteral получилось, а вот через uiColor не выходит, может я что-то не так сделал?
@@user-xx1lz5tb6p Нужно было написать точку после UIColor и вышли бы цвета списком
Продолжайте в том же духе
Респект! Очень полезно
Спасибо)
Спасибо за обзор.,они очень нужны
Спасибо! Очень понятно и интересно!!!!! 🙏
спасибо за уроки
Огромное спасибо!!
Спасибо огромное!)
так много разработчиков под иос и так мало что там есть и то написано давно ) что пишут все эти сеньёры ? загадка
рук все равно не хватает толковых, люди еще нужны, пока рынок еще актуальный, но да соглаушсь не все смогут в разработку, но для некоторых это шанс
@@romaarc
судя по тому как идут их дела они тем синь Ёрам не платят нифига )
за еду видать работают синь Ёры
Шикарно объяснено! Спасибо Вам огромное 🙏❤️
Добрый день, подскажите пожалуйста, 32:49 color > Color Literal. Как это сделать на новой версии? Не могу вызвать окно для выбора цвета
Такая же история(
Разобрался)
#colorLiteral(
Спасибо!
Очень достойное объяснение, спасибо
У вас сказано что это первая лекция. А должна быть второй, вы ведь говорите что нужно знать уже какую то базу. Логичней было бы сразу эту базу и дать первой лекцией. Спасибо за труды.
Немного базу объясняю в другом плейлисте. Также советую Скутаренко пройти для базы. Если Скутаренко будет сложно, то напишите в чат, что под видео. Там вам подскажут с чего начать
@@ivanskorokhod2959 В чате удивительно неадекватный Кирилл Дутов который раздаёт баны без объяснения причин всем подряд))
@@ivanskorokhod2959 не, Скутаренко не сложный, а не последовательный, дает домашнее задание где решение через циклы, а их он еще не объяснял = складывается впечатление что ты не понимаешь ничего и мотивация уходит в ноль, а проблема в непоследовательной подаче материала, также ДЗ было по базовым операторам, а их опять не проходили + ко всему видео записывалось лет 8 назад и очень много функционала не работает как на видео, а это многократно увеличивает проблему восприятия материала, так что ГОРАЗДО лучше посмотреть другие видео уроки, где будут обучать современному языку свифт, а не устаревшему
Лучшее, что подарила нам природа :)
Спасибо! Очень хорошо и понятно объясняешь!
Спасибо за ваш труд!
под айфон не все еще написано !?
чего там не хватает
видеоплееров
просмотрщиков картинок
игр
читалок книг
чего не хватает
чего еще не написали ?
лучший)
Спасибо, огонь!!!)
спасибо!!🔥
лучший!
Ребята подскажите, с 13 и 14 Xcode, в программе пропал color literal, "цветные квадратики" как мне сейчас задать цвет без этого?
нашел решение в комментариях
backgroundColor = #colorLiteral(
#colorLiteral( - пропиши руками, не просто вставляй, появляется палитра
Здравствуйте, спасибо за урок!
У меня возникла проблема: не присоединяется лейб к контроллеру, а кнопки присоединяются, подскажите, что нужно сделать
Буду благодарна )
здравствуйте, решили как-то проблему?
Помогите разобраться! после ввода UIColor Не появляется консольс выбором цвета, приходится после UIColor прописовать цвет совом button.backgroundColor = UIColor.white . В чем может быть загвоздка.?
Сделайте скриншот вашего кола и вышлите его в чат наш. Под видео есть ссылка.
t.me/swiftbookstart_chat
че делать если не вылазит окошко колор?
Как увеличить размер Эмодзи? Не понимаю, как к ним можно обратиться в коллекции
нужно вручную поменять Style в свойствах кнопки на Default вместо Plain
Спасибо! :) )))
Размер шрифта в кнопках поменял а эмоджи всё равно маленькие! Хоть всё и работает но внутренний перфекционист люто негодует! Що делать?
Разобрался. Вдруг кому пригодиться - нужно вручную поменять Style в свойствах кнопки на Default вместо Plain
@@zelinwagen у меня то же самое было!) Благодарю за то что поделился !
здравствуйте на 33 минуте 10 секунд я у себя не могу найти разрешения как у вас Color literic такого нету и не выходит квадратик с выбором цвета в xcode
Спасибо за труд) Но я так понял,что данный курс не для новичков? База все таки должна быть
Для этого курса желательно иметь представление о Свифте. Можете посмотреть видео «Введение» там я объясняю, что нужно знать. Можете посмотреть мой второй плейлист «коротко о Свифт» там я стараюсь объяснить основные концепции. После этого можете ещё посмотреть видео Скутаренко. Они немного устаревшие, но до сих пор актуальны, так как концепция радикально не поменялась.
Заходите в чат, там подскажем больше)))
t.me/swiftbookstart_chat
Здравствуйте, помогите пожалуйста, я не знаю как изменить background color, у меня не выходит квадратик как у вас, 33:03. Когда пишу color не выходит в подсказках UI color Color Literial, у меня xcode 14.1 подскажите пожалуйста что сделать чтоб выходил квадрат чтоб поставить цвет в интерфейсе, блогадарю
backgroundColor = #colorLiteral(
#colorLiteral( - пропиши руками, не просто вставляй, появляется палитра
@@swidan165 спасибо помог)))
После того как лису в коде уже вставил, размер шрифта опять поменялся на мелкий, попытался поменять не получилось, хелп))
нужно в настройках кнопки Style сменить с Plain на Default
Спасибо!
Здравствуйте! Огромное спасибо за видеоуроки!
У меня возникла проблема с моменте с цветом фона
Button.backgroundColor = не получается определить цвет (нет варианта “color literal” а на автомате выдаёт «colorSyncProFile”)
Подскажите, как быть ?
#colorLiteral(
@@serjshubin3648 а дальше что жмакать? не показывает квадратика, как на видео, где выбирать цвет. А выдает параметры RGBA где нужно прописывать самому значения
@@abracadabra5312 Да вроде пробел жмакаешь и превращается в квадратик. Если нет, то завтра посмотрю и отпишу
@@serjshubin3648 да, все ок, думал что хэштэг не надо было прописывать) с ним все сработало спасибо
@@serjshubin3648 Спасибо большое!
Не понял, если метод firstIndex возвращает первый елемент из коллекции, то за счет чего происходит присваивание второго, третьего .... елемента кнопке? И как происходит перебор самих кнопок?
Топ!
первый раз всё получилось, второй раз начал повторять и столкнулся с проблемой, размер эмодзи выставляю 50, но когда включаю эмулятор, он показывает эмодзи мелко, не соответствуя размеру? как это исправить голову уже сломал?
нужно вручную поменять Style в свойствах кнопки на Default вместо Plain
Здравствуй. При написание didset, все превращается в ошибку, даже когда только ставлю "}"
Как правильно написать??
Надо смотреть на код, много может быть причин, почему выдаётся ошибка.
Сделайте скриншот Вашего кода и пришлите его в наш чат и повторите там ещё раз Ваш вопрос. Я или может быть кто-то другой из чата Вам ответят.
Ссылка на чат:
t.me/swiftbookstart_chat
После написания 36 строки (время видео 34:48) в конце строки вылезает ошибка "Cannot find 'flipButton' in scope", а в строке 21 "Expected 'get', 'set', 'willSet', or 'didSet' keyword to start an accessor definition" . В чем может быть проблема? Заранее спасибо!
Иван, а какой у вас MacBook и с каким железом? Хочется понять скорость работы Xcode. Думаю купить себе Air 2020 на i3, как считаете, достаточно ли будет для разработки на Swift?
Да, должно хватить.
Заходите в чат, там можно обсудить такие вещи:
t.me/swiftbookstart_chat
Счетчик количества нажатий доходит до 9, а дальше просто троеточие, в чем дело?
Кнопку нужно сделать пошире, чтобы помещались двухзначные числа
Как быть если button.backgroundColor = color итам не стаится квадратик?
По любым вопросам, лучше пишите в те чаты, что по ссылке по видео. Ну, а если коротко)))))) можно просто написать UIColor поставить точку и написать цвет на английском например white и получиться UIColor.white
используй #colorLiteral()
@@NataProgernata Спасибо большое)
У меня почему то при перевороте карточки фон кнопки на белый цвет не меняется, как решить?
import UIKit
class ViewController: UIViewController {
var touches = 0 {
didSet {
touchLabel.text = "Touches: \(touches)"
}
}
func flipButton(emoji: String, button: UIButton) {
if button.currentTitle == emoji {
button.setTitle("", for: .normal)
button.backgroundColor = #colorLiteral(red: 0, green: 0.46, blue: 0.89, alpha: 1)
} else {
button.setTitle(emoji, for: .normal)
button.backgroundColor = #colorLiteral(red: 1, green: 1, blue: 1, alpha: 1)
}
}
@IBOutlet var buttonCollection: [UIButton]!
@IBOutlet weak var touchLabel: UILabel!
@IBAction func buttonAction(_ sender: UIButton) {
touches += 1
flipButton(emoji: "🐶", button: sender)
Иван, спасибо за практическое задание!
После написания строчки
if let buttonIndex = buttonCollection.firstIndex(of: sender) {
flipButton(emoji: emojiCollection[buttonIndex], button: sender)
}
программа крашится с текстом Thread 1: Fatal error: Index out of range
В чём может быть проблема?
Там в ошибке и написана причина. Вы обращаетесь к индексу, которого нет. Допустим если в массиве 3 элемента, то Вы можете достучаться до элемента 0(первого), элемента 1(второго) и до элемента 2(третего). Счёт в массивах начинается с нуля.
Скорее всего у вас в массиве(array) 6 элементов к примеру, а Вы обращаетесь к 10-му элементу например. Программа не знает, где взять элемент, который не существует и просто падает.
Если не получится решить проблему самостоятельно, пишите нам в чат. Внизу ссылка:
t.me/swiftbookstart_chat
Работа видно огромная произведена,но что мешало записать курс на xcode 12,тем более он вышел через два дня после выпуска видео.
В данном случае роли Xcode 11 и 12 особо не играет, это даже по сути вообще ваше дз разобраться самому, увы такое в работе iOS разраба будет почти каждый день разбираться в чем-то для себя новом и это полезный навык
Не вылезает квадрат с цветом, все сделал точно по видео
Добрый вечер! Спасибо за курс на русском) я обучаюсь в Xcode 12, там в Connection нет выбора "Action" есть только Outlet и Outlet Collection как быть?)))
Разобрался сам, не правильно сделал Button!)))))
33:08 как поменять цвкт background сейчас? у меня не появляется квадратик, может есть другой способ присвоить цвет
UIcolor. tintColor (либо другой цвет, который есть, похожий на твой, но тогда измени и в первом файле цвета карт на тот, что будешь использовать
UIcolor.systemBackground еще можешь попробовать. сама ток разбираюсь
а что если у меня довольно старая версия xcode 6.2? Можно ли будет обучаться по вашим курсам на моей версии?
Скорее всего да. Возможно некоторые названия будут отличатся. Но лучше конечно обновить Xcode до последней версии
а по SwiftUI будет?)
damir battalov все в свою очередь
Подскажите как увеличить размер эмодзи.
нужно вручную поменять Style в свойствах кнопки на Default вместо Plain
для самого начинающего макбук М1 8/256 для Swifta хватит? Чтоб комфортнее работать какой посоветуешь, бро?
Да, хватит точно. Заходи в наш чат:
t.me/swiftbookstart_chat
Как двигать объекты в виртуальной машине также как и ты, они у меня просто переносятся по двойному щелчку в центр и все, я не могу их передвигать просто нажимая на них и ведя по экрану, казак мне это делать?
Чтобы понять, что именно не получается и почему, добавитесь в наш чат и пришлите видео того, как Вы двигаете объекты.
Ссылка на чат:
t.me/swiftbookstart_chat
Создание нескольких экранов в одном сториборде не есть хорошо !
Сториборд (Storyboard (англ.) - раскадровка) для того и задуман, чтобы создавать несколько экранов в одном файле верстки, а так же связи между экранами. Другой вопрос как правильно группировать экраны по сторибордам, если уж принято решение этими самыми сторибордами пользоваться.
Ребят, не выходит Color Litteral в чем может быть проблема ?
Если есть вопросы и не получается что-то, то можете написать в этот чат. В этом чате все друг другу помогают кодить и кто-то подскажет, что не так.
t.me/swiftbookstart_chat
в последующих версиях свифта идёт небольшое синтаксическое изменение
Теперь так - #colorLiteral()
@@lzhkn большое спасибо
19:50
У меня Windows а телефон Galaxy Android😮
Помогите пожалуйста , на 33 минуте , при вводе backgroundColor = Color нет в предложенных Color Literal , соответственно не могу выбрать цвет (
Напишите о Вашей проблеме в Телеграм чат и сделайте скришот вашего кода. Ссылка под видео
@@ivanskorokhod2959 спасибо
Получилось узнать?
По любым вопросам, лучше пишите в те чаты, что по ссылке по видео. Ну, а если коротко)))))) можно просто написать UIColor поставить точку и написать цвет на английском например white и получиться UIColor.white
используй #colorLiteral()
Блинский, у меня у одного иконка touches не выводится на экран при запуске? :D
Зайдите в наш чат и скиньте Ваш код, посмотрим, что там не так))))
Вот ссылка на чат
t.me/swiftbookstart_chat
@@ivanskorokhod2959 спасибо за ответ, обязательно скину, как вернусь домой
А что делать если у меня windows? Какие компиляторы использовать?
Заходите в наш чат. Напишите Ваш вопрос ещё раз вам там ответят. Есть разные варианты, как работать через Виндоус. t.me/swiftbookstart_chat
у меня возникла проблема с colorLiteral . Загуглила , оказывается это проблема у многих ... к сожалению не нашла решения и забросила игру 😭😭😭😭
Напишите в чат про Вашу проблему. Под другими комментариями уже писали ответ, как это решить. Это легко решается просто в более старой версии Xcode все это реализовывалось немного по-другому
@@ivanskorokhod2959 спасибо, посмотрю и продолжу игру . ☺️
UIcolor.systemBackground
@@shakhatova_malina спасибо большое ❤️
Swift где скачать
Swift - это язык программирования.
Вы наверное имеете виду, где скачать Xcode.
XCode - это программа, где пишется все на языке Свифт.
Как все скучать я рассказывал в этом видео:
Введение. Коротко о SWIFT
ruclips.net/video/EpAHC2jHHpM/видео.html
Спасибо большое...
СПАСИБО!