Giter Club home page Giter Club logo

scrumdinger's People

Contributors

vmkmym avatar

Watchers

 avatar

scrumdinger's Issues

feat: Passing data

목적

  • 앱 데이터에 대한 신뢰할 수 있는 소스를 만듭니다.
  • 그리고 바인딩을 사용하여 뷰 간에 데이터를 동기화할 수 있습니다.

Passing data with bindings

  • Add a theme view
  • Add a theme picker
  • Pass the edit view a binding to data
  • Pass a binding into the detail view
  • Pass a binding into the list view

feat: Custom views and animation

Examining accessibility in Today

  • Accessibility in UIKit
  • Accessibility in Today
  • Actions and values
  • Labels and traits
  • Custom accessibility elements
  • Ways to make an app accessible
  • Resources
  • What’s next

Creating a progress view

  • Create relational constraints
  • Customize the appearance of the progress circle
  • Display the header view
  • Update progress dynamically
  • Make the progress view accessible

Creating a gradient background

  • Create a gradient layer
  • Add the gradient layer to the list

feat: UIKit essentials

UIKit essentials

Getting started with Today

  • Introduction
  • About this module
  • UIKit overview
  • Tour of the app
  • Tips for success
  • Time to build the app

Creating a list view

  • Introduction
  • Create a project
  • Add a collection view controller
  • Create a reminder model
  • Configure the collection as a list
  • Configure the data source
  • Apply a snapshot

feat: Adding, deleting, and filtering reminders

Adding and deleting reminders

  • Create an add action
  • Connect the target-action pair
  • Add a new reminder to the model
  • Delete a reminder

Filtering reminders

  • Create a list style enumeration
  • Filter reminders by list style
  • Display a segmented control
  • Add action to segmented control

feat: Network data

Managing structured concurrency

  • Fetching multiple URLs
  • Protecting data with actors

Caching network data

  • Fetch quake location
  • Cache quake details
  • Fetch multiple locations

Adding the detail view

  • Show quake details
  • Display the location details
  • Add the map view

Refining your craft

  • What you’ve learned
  • What’s next?
  • Connecting with others
  • Finding inspiration
  • Designing for the network
  • Creating more apps

feat: Recording audio

목적

  • 사용자의 하드웨어나 민감한 데이터에 대한 액세스를 요청하여 사용자의 개인 정보를 존중하세요.
  • 오디오를 녹음하고 텍스트로 변환하세요.

Examining data flow in Scrumdinger

  1. Scrum timer meeting properties
  2. Scrum timer data flow
  3. Speech recognizer architecture
  4. Timing of speech recognition actions

Transcribing speech to text

  1. Request authorization to device hardware
  2. Integrate speech recognition
  3. Display recording indicators
  4. Create a history view
  5. Display a history view

Finding more resources

feat: Drawing

목적

  • SwiftUI 지오메트리 도구로 도형을 정의하세요.
  • 스크럼 참가자의 발언 시간을 나타내는 세그먼트를 그립니다.
  • 그리고 회의 진행 상황을 표시하는 링을 채우세요.

Create the meeting timer view

  1. Create the meeting timer view
  2. Draw an arc segment
  3. Draw the progress ring

feat: Collection views and navigation

Adopting collection views

  • Displaying collections
  • Creating a diffable data source
  • Defining cell configurations
  • Generating data source snapshots
  • Using modern collection views in Today

Displaying cell info

  • Format the date and time
  • Organize view controllers
  • Change the cell background color
  • Display the reminder complete status

Making reminders identifiable

  • Make the model identifiable
  • Create functions for accessing the model
  • Create a custom button action
  • Wire a target-action pair
  • Update the snapshot
  • Make the action accessible
  • Preview using the Accessibility Inspector

Displaying reminder details

  • Create a reminder view
  • Create an enumeration for rows
  • Set up the data source
  • Set up a snapshot
  • Display the detail view
  • Style the navigation bar

feat: Views

목적

Scrumdinger는 사용자가 참석한 일일 스크럼 목록을 보관하고 루트 view에 해당 목록을 표시합니다.
목록은 스크롤 가능한 단일 열에 정렬된 데이터 행을 표시하는 컨테이너 뷰입니다.

작업 상세내용

일일 스크럼의 요약을 표시하는 CardView를 빌드
목록의 각 행에서 이 CardView를 사용하는 목록 보기를 빌드
목록 보기를 사용하여 사용자의 일일 스크럼 요약을 표시
목록을 앱의 기본 화면으로 만들기

참고 사항

Creating a card view
Displaying data in a list

feat: Making editable views

Getting ready for editing

  • Create sections for an editing mode
  • Configure the view and editing modes
  • Add an edit button
  • Show headers in editing mode

Managing content views

  • Using content views in editing mode
  • Implementing content views
  • Creating a custom content view
  • Creating a custom content configuration
  • Configuring your custom content view
  • Applying the custom content configuration
  • Using custom content views in Today

Using content views

  • Extract configuration methods
  • Create a reusable layout function
  • Create a custom view with a text field
  • Conform to the content view protocol
  • Complete the content view
  • Display the content view
  • Create content views for the date and notes

Editing reminders

  • Add a working reminder
  • Make the text configuration editable
  • Make the date configuration editable
  • Make the notes configuration editable
  • Cancel edits
  • Observe changes in a view hierarchy

feat: Persistence and concurrency

목적

  • 스크럼을 파일 시스템에 저장하여 앱이 종료될 때 데이터를 안전하게 유지하세요.
  • 비동기 코드를 정의하고 호출하는 방법을 알아보세요.
  • 그리고 비동기 호출에서 발생하는 오류를 처리하세요.

Adopting Swift concurrency

Persisting data

  1. Add codable conformance
  2. Create a data store
  3. Add a method to load data
  4. Add a method to save data
  5. Load data on app launch
  6. Save data in inactive state

Adopting new API features

Handling errors

  1. Add an error wrapper structure
  2. Create an error view
  3. Report errors
  4. Simulate data corruption

feat: System frameworks

Loading reminders

  • Fetch reminders asynchronously
  • Convert between model types
  • Create a reminder store
  • Read all reminders
  • Request access to reminder data
  • Display errors to the user
  • Display reminders
  • Test EventKit integration

Saving reminders

  • Respond to change notifications
  • Read reminders individually
  • Convert between model types
  • Save reminders individually
  • Save added reminders
  • Save updated reminders
  • Remove reminders

Continuing your learning

  • What you’ve learned
  • What’s next?
  • Connecting with others
  • Researching design
  • Creating more apps
  • Continuing your training

feat: SwiftUI essentials

목적

  • 많은 소프트웨어 엔지니어링 팀은 스크럼이라고 하는 일일 회의를 통해 그날의 작업을 계획합니다. 스크럼은 각 참석자가 어제 달성한 작업, 오늘 작업 중인 작업, 작업에 영향을 미칠 수 있는 장애물에 대해 논의하는 짧은 회의입니다.

  • 이 모듈에서는 팀이 일일 스크럼을 관리하는 데 도움이 되는 iOS 앱인 Scrumdinger 개발 과정을 안내합니다.

  • 스크럼을 짧고 집중적으로 유지하기 위해 Scrumdinger는 시각 및 청각 신호를 사용하여 각 참석자가 발언해야 하는 시기와 길이를 나타냅니다. 앱은 또한 회의에 남은 시간을 보여주고 사용자가 나중에 참조할 수 있는 기록을 생성하는 진행 화면을 표시합니다.

작업 상세내용

  • 회의 타이머 화면 생성
  • 뷰 스타일 지정
  • 접근성 데이터 보완

참고 사항

  • Getting started with Scrumdinger
  • Using stacks to arrange views

feat: Tests

Getting started with Earthquakes

  • About this module
  • Technology overview
  • Tour of the app
  • Tips for success
  • Time to begin
  • Special thanks

Decoding structured JSON

  • Decode earthquake data
  • Test the decoder
  • Decode GeoJSON
  • Decode a location
  • Test decoding a location

Using existentials and generics

  • Comparing existential and generic types
  • Using existential types in Earthquakes

Building a network test client

  • Create a network client
  • Test the quake client
  • View client data
  • Test concurrent data access

feat: Navigation and modal presentation

목적

  • 앱의 탐색 계층 구조를 구축하고 자체 탐색 스택을 사용하여 모달 보기를 표시하세요.
  • 상태 관리의 기본 사항을 알아보세요.
  • 그리고 그 지식을 적용하여 편집 가능한 뷰를 구축하세요.

Creating a navigation hierarchy

  1. Set up navigation
  2. Create the detail view
  3. Add visual components to the detail view
  4. Iterate through attendees
  5. Navigate between screens

Managing data flow between views

Creating the edit view

  1. Add an edit view for scrum details
  2. Display attendees in the edit view
  3. Add accessibility modifiers
  4. Present the edit view

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.