Difference between revisions of "Swift"

From Lost In Wonderlands
Jump to: navigation, search
(Compiler Directives)
(P)
Line 295: Line 295:
 
== O ==
 
== O ==
 
== P ==
 
== P ==
 +
 +
* print
 +
* debugPrint
 +
 +
special print keywords
 +
 +
Literal        Type    Value
 +
{| class="wikitable" border="1"
 +
|-
 +
! Tag
 +
! Type
 +
! Description
 +
|-
 +
| #file
 +
| String
 +
| The name of the file in which it appears.
 +
|-
 +
| #line
 +
| int
 +
| The line number on which it appears.
 +
|-
 +
| #column
 +
| Int
 +
| The column number in which it begins.
 +
|-
 +
| #function
 +
| String
 +
| The name of the declaration in which it appears.
 +
|-
 +
| #dsohandle
 +
| UnsafeMutablePointer
 +
| The dso handle.
 +
|}
 +
 +
 +
 +
#file          String  The name of the file in which it appears.
 +
#line          Int      The line number on which it appears.
 +
#column        Int      The column number in which it begins.
 +
#function      String  The name of the declaration in which it appears.
 +
#dsohandle    UnsafeMutablePointer  The dso handle.
 +
 
== Q ==
 
== Q ==
 
== R ==
 
== R ==

Revision as of 10:49, 3 May 2022

Contents

Swift

See also

Swift

Swift Topics

Data Flow and Control Flow

Data Modeling

Language Interoperability

Class Bridging
Swift and Objective C and C


Cocoa Design Patterns and Swift

Swift with Style

Swift API design

Swift Standard Library

Swift protocols

protocols conformance

protocols

Swift Generics


Swift Patterns

 https://github.com/ochococo/Design-Patterns-In-Swift


Swift Algorithms

more algorithms

in python

in C++


tutorials

forums

books


Topics

A

Application Transport Security

B

C

Compiler Directives

  • constants for Apple Platforms OS
 iOS , tvOS, macOS, watchOS, iPadOS (should be this for iPad)
  • directive model
 #if os(iOS) || os(tvOS)
     ...
 #elseif (os(macOS)
    ...
 #endif
  • In #if compiler directive in Swift, you need to enclosed valid statements.


You may need to write something like this:

 #if os(iOS)
     var body: some View {
         NavigationView{
              ...
         }
         .navigationViewStyle(StackNavigationViewStyle())
     }
 #else
      var body: some View {
          NavigationView{
                ...
         }
        .navigationViewStyle(DoubleColumnNavigationViewStyle())
      }
 #endif

Or this:

 var body: some View {
      let navView = NavigationView{
      ...
  }
  #if os(iOS)
      return navView
      .navigationViewStyle(StackNavigationViewStyle())
  #else
      return navView
      .navigationViewStyle(DoubleColumnNavigationViewStyle())
  #endif
  }

but not this: As you can see, .navigationViewStyle(StackNavigationViewStyle()) is not a valid statement.

     NavigationView {
         ...
     }
 #if os(iOS)			
     .navigationViewStyle(StackNavigationViewStyle())
 #endif

D

Do, Try /Catch

E

F

G

H

HTTPCookieStorage

I

issues with REST and URLSession

J

JSONDecoder

JSONEncoder

JSONSerialisation

K

L

M

N

NSAppTransportSecurity

https://stackoverflow.com/questions/8023126/how-can-i-test-https-connections-with-django-as-easily-as-i-can-non-https-connec https://gist.github.com/claudiosanches/7012524 https://www.google.com/search?client=safari&rls=en&q=ios++swift+url+maker+and+localhost++plus+port+number&ie=UTF-8&oe=UTF-8 https://github.com/depoon/SwiftLocalhost

  • mostly on a simulator to access a http://localhost:portnum/service hosted on the same host
  • IOS reinforce the access to HTTPS only since ioS 7
  • for sometime it was possible to grant htpp access in the info plist but now we have to grant more things
<key>NSAppTransportSecurity</key>
   <dict>
       <key>NSAllowsArbitraryLoads</key>
       <true/>
   </dict>
  • local host or 127.0.0.1
var rest_url = "http://127.0.0.1:8000/rest/users/"


NSURLConnection

O

P

  • print
  • debugPrint

special print keywords

Literal Type Value

Tag Type Description
#file String The name of the file in which it appears.
#line int The line number on which it appears.
#column Int The column number in which it begins.
#function String The name of the declaration in which it appears.
#dsohandle UnsafeMutablePointer The dso handle.


  1. file String The name of the file in which it appears.
  2. line Int The line number on which it appears.
  3. column Int The column number in which it begins.
  4. function String The name of the declaration in which it appears.
  5. dsohandle UnsafeMutablePointer The dso handle.

Q

R

REST API call

testing it using curl

sample code

S

T

try /catch

U

URl Cache

URLSessionConfiguration

URLComponents, how to build a safe escaped url /uri

sample code

URLCredentielStorage

URLRequest

URLSession

Using JSON with custom Type

V

W

X

Y

Z

swift versions

WWDC 2020

WWDC2019

WWDC 2018

WWDC 2017

WWDC 2016

Sample codes

Apple on GitHub for swift

Rest API


samples

Articles

Blogs

Tools link

Books

Trainings