COMPUTER

처음이기에 일단은 막 해보자.

(윈도우 환경)


깃허브 https://github.com 

가입해서 아이디 비밀번호 기억하고


New repository 클릭하여

새로운 저장소 만들어 두고



소스트리 검색해서 다운로드 하자

맥에서 작업중이라 윈도우 화면 캡쳐가 안되니 나중에..

알아서 소스트리 받아서 설치를 합시다


이렇게



아틀라시안? 이거 가입해서 로그인을 한다. 

(가입과정 생략, 불친절 미안)

로그인 하시고


넘어가다 보면 밑에 화면이 보인다.

(건너뛰기 하면 난 모르겠다. 어렵더라 건너뛰지 않기를)

깃허브 계정 만들었던 걸로 로그인 하고


머 다운 받으라고 나오는거 받고 계속하면 된다.

중간에 저장소 선택하는거 나오는데 거기서 작업할 저장소 선택해 둔다.


작업해서 진행하다 보면 소스트리가 켜진다.

저장소를 선택했다면 저장소도 만들어서 연결된다

( 클론 )



그리고 아래처럼 들어가서



로컬 컴퓨터 깃에서 사용할 이름과 이메일을 적어준다.



아래에서 커밋, 푸시, 풀을 사용 하면 된다.



기본적인 깃의 개념은

https://rogerdudler.github.io/git-guide/index.ko.html

여기서 배우기 바란다.





작업은 알아서 컴퓨터에서 하고

파일 관리를 할때 소스트리로 돌아와서 작업을 한다.



작업을 할만큼 하고 포인트를 잡으려고 할때

스테이지 올라가지 않은 요놈이 보일것이다.



stage All  클릭하여 위로 올려주고


오른쪽에 초록색으로 + 옆에 써있는게 추가 된 내용이라는 것이담.


가장 하단에 커밋 메세지도 생략할 수 있지만 적는게 좋아 보인다.



그렇게 커밋 하고 나면 이렇다.

왼쪽위에 푸시에 보면 파란 1 이 있지 않은가?

방금 커밋은 컴퓨터 내의 저장소에 포인트를 하나 만든것.

원격 서버로 올리려면 저 푸시를 클릭.




이런화면을 만나고

브렌치 선택해서 푸시.

( 문제 없을경우 끝 )



서버는 하나 작업자는 여러명이라면

서버에서 충돌이 일어날 것이다.

이. 렇. 게


그럼 당황하지 말고 푸시버튼 옆의 풀을 클릭.

에러가 또 뜨겠지만 상관없고 이런 화면이 나올것이다.

작업해둔 내용이 다르기에 2가지로 갈라졌었고

다시 하나로 합쳐서

"커밋하지 않은 변경사항'이라고 나와있다.


우측하단의 이부분

서버와 나의 차이를 알려준다.

직접 소스에서 하나만 남기고

작업하고, 커밋하고, 푸시 하면 잘된다.



swift 간단 animation 효과

2016. 8. 10. 17:54

스위프트 간단 애니매이션 효과


기본 Animation


UIView.animateWithDuration(

  //동작 시간, 준비시간

            1.0, delay: 0.0,

  //옵션이라는데 알아봐야할듯 속도조절부분 인듯 한데

            options: UIViewAnimationOptions.CurveEaseOut,

            //Animation 내용

            animations: {

                //ex 투명도를 1로 바꿈(원래 0, 투명한 상태)

                self.StackView.frame.origin.y -= 10

            }, completion: nil

        )



이부분 사용법 [ completion: nil ]


UIView.animateWithDuration(

            1.0, delay: 0.0,

            options: UIViewAnimationOptions.CurveEaseOut,

            animations: {

                //Animation 내용

                //ex

                self.StackView.frame.origin.y -= 10

            }, completion: {

                (finished: Bool) -> Void in

                //사용할 기능 추가

            }

        )


이런식으로 사용.

completion에 애니매이션을 넣어서

애니매이션 후 애니매이션 가능.



기본 애니메이션 기능

'COMPUTER > swift' 카테고리의 다른 글

uitableview 기타등등 기능.  (0) 2016.09.20
swift tab  (0) 2016.09.19
API 호출시 UI 멈춤 해결  (1) 2016.07.28
swift에서 web을 통해 json 받아오기  (1) 2016.07.20
스위프트 기초  (0) 2016.02.16

API 호출시 UI 멈춤 해결

2016. 7. 28. 13:14

확실한 것은 아니지만

post 로 통신을 하면서

전송 완료 에 화면에 관련된 먼가를 하면 친숙한 

에러가 계속 보였다.

계속되는 오류 속에 이거 인듯하다 라는 것을 적어둬야지.

   let postString = "id=\(id)&pw=\(pw)"

                print(postString)

                request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)

                

                let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { data, response, error in

                    guard error == nil && data != nil else {                                                          

// check for fundamental networking error

                        print("error=\(error)")

                        return

                    }

                    

                    if let httpStatus = response as? NSHTTPURLResponse where httpStatus.statusCode != 200 {           

// check for http errors

                        print("statusCode should be 200, but is \(httpStatus.statusCode)")

                        print("response = \(response)")

                    }

                    

                    let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)


//로그인 성공

                    guard responseString=="false" else {

        self.LoginSuccess()

                        return

                    }

                    //로그인 실패

NSLog("로그인 실패")

                }

                task.resume()



기본소스는 이거 하지만...


self.LoginSuccess() 여기서 화면 전환이 이루어지는데


계속 오류남....




오류내용.


로그인 실패 = Optional(false)

2016-07-28 13:06:45.916 MyAPP[10681:3224463] *** Assertion failure in -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit_Sim/UIKit-3512.60.7/Keyboard/UIKeyboardTaskQueue.m:386

2016-07-28 13:06:45.920 MyAPP[10681:3224463] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException',

 reason: '-[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.'

*** First throw call stack:

(

0   CoreFoundation                      0x0000000104e61d85 __exceptionPreprocess + 165

1   libobjc.A.dylib                     0x0000000106c05deb objc_exception_throw + 48

2   CoreFoundation                      0x0000000104e61bea +[NSException raise:format:arguments:] + 106

3   Foundation                          0x00000001052b2d5a -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 198

4   UIKit                               0x00000001060c4a73 -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] + 165

5   UIKit                               0x000000010592bdc9 -[UIKeyboardImpl setDelegate:force:] + 1085

6   UIKit                               0x0000000105cf7d05 -[UIPeripheralHost(UIKitInternal) _reloadInputViewsForResponder:] + 1040

7   UIKit                               0x0000000105d00824 -[UIPeripheralHost(UIKitInternal) _preserveInputViewsWithId:animated:reset:] + 475

8   UIKit                               0x0000000105835c5a -[UIViewController _presentViewController:modalSourceViewController:presentationController:animationController:interactionController:completion:] + 1175

9   UIKit                               0x000000010583794d -[UIViewController _presentViewController:withAnimationController:completion:] + 4916

10  UIKit                               0x000000010583a85c -[UIViewController _performCoordinatedPresentOrDismiss:animated:] + 489

11  UIKit                               0x000000010583a36b -[UIViewController presentViewController:animated:completion:] + 179

12  MyAPP                          0x0000000104c7050c _TFC10MyAPP14ViewController5alertfT7messageSS_T_ + 892

13  MyAPP                          0x0000000104c71cea _TFFC10MyAPP14ViewController11LoginActionFPs9AnyObject_T_U_FTGSqCSo6NSData_GSqCSo13NSURLResponse_GSqCSo7NSError__T_ + 2250

14  MyAPP                          0x0000000104c72197 _TTRXFo_oGSqCSo6NSData_oGSqCSo13NSURLResponse_oGSqCSo7NSError__dT__XFdCb_dGSqS__dGSqS0__dGSqS1___dT__ + 103

15  CFNetwork                           0x000000010811fb49 __75-[__NSURLSessionLocal taskForClass:request:uploadFile:bodyData:completion:]_block_invoke + 19

16  CFNetwork                           0x00000001081320f2 __49-[__NSCFLocalSessionTask _task_onqueue_didFinish]_block_invoke + 302

17  Foundation                          0x00000001052db630 __NSBLOCKOPERATION_IS_CALLING_OUT_TO_A_BLOCK__ + 7

18  Foundation                          0x0000000105216805 -[NSBlockOperation main] + 101

19  Foundation                          0x00000001051f9725 -[__NSOperationInternal _start:] + 646

20  Foundation                          0x00000001051f9336 __NSOQSchedule_f + 194

21  libdispatch.dylib                   0x00000001076953eb _dispatch_client_callout + 8

22  libdispatch.dylib                   0x000000010767b82c _dispatch_queue_drain + 2215

23  libdispatch.dylib                   0x000000010767ad4d _dispatch_queue_invoke + 601

24  libdispatch.dylib                   0x000000010767d996 _dispatch_root_queue_drain + 1420

25  libdispatch.dylib                   0x000000010767d405 _dispatch_worker_thread3 + 111

26  libsystem_pthread.dylib             0x00000001079d24de _pthread_wqthread + 1129

27  libsystem_pthread.dylib             0x00000001079d0341 start_wqthread + 13

)

libc++abi.dylib: terminating with uncaught exception of type NSException

(lldb)



[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.

요녀석이 에러의 주범인듯 싶다.


누군가는 이글에서 오류를 해결하기 바라며 일단 오류 메세지 다 올리고


해결은 


통신이 끝나고 화면전환이 이루어지는 부분에


dispatch_async(dispatch_get_main_queue()) {

  self.LoginSuccess()

   }


요로케 해주니 오류 안나더라


그러고 더 작업하는데


로그인 실패시 경고메세지 띄워주는데


또 오류.


그리고 같은 방법으로 해결


------------------------------------------------------------------------------------


dispatch_async(dispatch_get_main_queue())


해결한 후에 저게 뭔지 찾아보니


읽어보니 음 이런거구나


원리는 여기서 읽어보시고


해결해서 기쁨.

'COMPUTER > swift' 카테고리의 다른 글

uitableview 기타등등 기능.  (0) 2016.09.20
swift tab  (0) 2016.09.19
swift 간단 animation 효과  (0) 2016.08.10
swift에서 web을 통해 json 받아오기  (1) 2016.07.20
스위프트 기초  (0) 2016.02.16

sublime text 2 - ftp setting

2016. 7. 21. 10:40


1. sublime text 2가 설치 되어있다고 가정


2. 아래처럼 콘솔 창을 켠다 



3. 이걸 입력한다.


import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'


4. sublime text 를 끄고 다시 켠다.


5. 이런게 생긴다



6. install Package - Enter



7. SFTP 검색후 - Enter 하면 설치 시작



8. SFTP는 폴더마다 셋팅이 필요함. 이걸 클릭하면



9. 머가 줄줄줄 나오는데 세팅해서 쓰면 끝.





내가 하는 세팅법.


 1. "upload_on_save": 저장할 때 업로드 할꺼냐, - 처음에 false임 true로 ㄱ.


"upload_on_save": true,


2. 접속할 FTP주소, 이름, 비번


"host": "주소",

"user": "이름",

"password": "비번",


3. 마지막으로 경로 설정


"remote_path": "경로",

'COMPUTER > IDE' 카테고리의 다른 글

Atom 에서 FTP 사용하기  (0) 2017.03.28
brackets emmet setting  (2) 2016.07.19

다른 방법도 많겠지만 로딩되자마자 콘솔창에 받아오는걸 보고 싶었다.


처음 프로젝트 만들고 나면


ViewController.swift 가 있다.


거기에 이런 부분이 만들어져 있다.


override func viewDidLoad() {

super.viewDidLoad()

// Do any additional setup after loading the view, typically from a nib.

}


여기에다가 이렇게 추가하고


 override func viewDidLoad() {

    let apiURI = NSURL(string: "http://ip.jsontest.com")

    let apidata : NSData? = NSData(contentsOfURL: apiURI!)

    NSLog("API Result=%@",NSString(data:apidata!,encoding: NSUTF8StringEncoding)!)

    

super.viewDidLoad()

// Do any additional setup after loading the view, typically from a nib.

 }


돌리면 에러난다 에러는 여기서 시키는 대로 하니 해결되더라


http://stackoverflow.com/questions/31254725/transport-security-has-blocked-a-cleartext-http



실행시키면


2016-07-20 17:00:09.163 hello[4845:2248555] API Result={"ip": "우리.집.아이.피"}


잘나온다



- 테스트용 json은 http://www.jsontest.com 여기에서 ip받는 부분을 사용했습니다.

'COMPUTER > swift' 카테고리의 다른 글

uitableview 기타등등 기능.  (0) 2016.09.20
swift tab  (0) 2016.09.19
swift 간단 animation 효과  (0) 2016.08.10
API 호출시 UI 멈춤 해결  (1) 2016.07.28
스위프트 기초  (0) 2016.02.16

brackets emmet setting

2016. 7. 19. 15:53

상단 메뉴의 파일 - 확장 기능 관리자... 클릭


창이 하나 뜸.


새로뜬 창의 우측 상단에 돋보기에 emmet 검색


(파란글씨 추가 정보... 누르면 emmet 만든 곳으로 감.)


검색해서 나오는거 설치


띡띡띡 진행되고 나면 설치끝


시키는대로 확장기능 설치하고


껏다키면 사용가능.


추가 정보... 는 설치 후에


확장 기능 관리자... 여기서 설치됨 항목에서 계속 확인 가능


비활성 하고 삭제도 여기서 가능.


'COMPUTER > IDE' 카테고리의 다른 글

Atom 에서 FTP 사용하기  (0) 2017.03.28
sublime text 2 - ftp setting  (0) 2016.07.21

스위프트 기초

2016. 2. 16. 00:03

스위프트 한글문서

http://swift.leantra.kr/#contributor

-참고.. 

로딩이 길다..

스크롤 압박..

'COMPUTER > swift' 카테고리의 다른 글

uitableview 기타등등 기능.  (0) 2016.09.20
swift tab  (0) 2016.09.19
swift 간단 animation 효과  (0) 2016.08.10
API 호출시 UI 멈춤 해결  (1) 2016.07.28
swift에서 web을 통해 json 받아오기  (1) 2016.07.20

블로그에 글쓰는게 생활화 되야하는데

넘치는 사망년 과제로 손을 대기가 힘들다..

여담은 이만하고


일단 아마존에 서버는 만들었는데

접속은...?


 머 여타 다른 방법도 있지만

나는 Window7 에서 Putty를 사용했다.

온라인으로 하는 것도 있고 Xshell 이라는 것도 있고

Ubuntu 와 Mac은 접속이 더 편리한 것 같지만

대한민국 일반 대학생은 윈도우가 좋으니..



Putty를 가지고 하려면

여기서 빨간 표시된 두 녀석을 받는다.(파랑이 링크 같겠지?)




Putty는 실제 접속할때 쓰는 놈

PuTTYgenAWS에서 받은 key를 Putty용으로 변환 해주는 놈이다.



요게 Putty


요게 PuTTYgen




그리고 저번시간 마지막에 다운 받았던

KEY를 준비한다.

다운받은 KEY는 ( .pem) 형식인데 Putty에서 이를 지원하지 않아

PuTTYgen을 통해 ( . ppk ) 형식의로 변환해야 한다.




PuTTYgen을 실행시키고

1 . parameters SSH-2 RSA 로 설정하고

( 기본값이다. AWS 설명에 있길래 나도 한번더 ㅎㅎ)

2. Load 버튼을 누른다.


저번에 다운받은 KEY를 찾는다.

그냥은 안보인다.

이렇게 ALL Files(*.*)로 바꿔주고




보이넹?




열기

음 잘 불러와 졌고.



이런 화면이 나온다.

여기서 이제 불러온 KEY

Save private key 하여 ( .ppk ) 만듥


 영어 경고창은 빠르게 Enter.



파일이름과 저장 경로를 지정하면




접속준비가 되었습니다.

언제 접속해서 결과를 보나... 다음시간에 꼭 접속해봅시다.

'COMPUTER > AWS' 카테고리의 다른 글

아마존 웹서비스 도전기 #4  (0) 2015.11.03
아마존 웹서비스 도전기 #3  (0) 2015.11.03
아마존 웹서비스 도전기 #2  (0) 2015.11.03
아마존 웹서비스 도전기 #1  (0) 2015.11.03
아마존 웹서비스 도전기 #0  (0) 2015.11.03

+ Recent posts