# @Deprecated

SecurityConfig httpSecurity 버전 이슈(스프링 부트와 AWS로 혼자 구현하는 웹 서비스)
[스프링 부트와 AWS로 혼자 구현하는 웹 서비스]라는 책을 보며 생기는 문제나 궁금한 점을 조금씩만 적어보고자 한다.(제발 프로젝트도 틈 날때마다 좀 적자!) 문제 발생 chapter05에서 oauth를 통해 로그인 기능을 구현하는 과정에서 문제가 생겼다. 위 코드가 책에 나와있는 코드이다. 근데 여기서 문제점이 몇개 있다. WebSecurityConfigureAdapter가 deprecated되었다. authorizeRequests도 deprecated되었다. 따라서 위와 같이는 작동이 되지 않을 것이다. 해결 변한 점 configuration annotation filterChain return value httpSecurity 메서드 사용 시 람다 사용 채굴 filter chain? 
[SwiftUI]navigationBarItems가 deprecated..? 그리고 페이지 이동
이전 포스트에 이어서 navigationBarItems가 deprecated에 대해서 말하겠다. 이는 이제 사용하지 않고 Toolbar를 사용하는데 바로 적용한것을보자 navigationBarItems가 deprecated 기존 코드 개선 코드 이와 같이 toolbar를 사용해야한다... 이제 여기 있는 presentaationMode를 보자 페이지 이동 상단 view에 아래를 추가하고 이와 같이 작성해주면된다. 그리고 이를 적용한 바는 : 이와 같이 해결가능!

[ Spring Security ] WebSecurityConfigurerAdapter deprecated 대처 방법
Configuring HttpSecurity Before After Configuring WebSecurity Before After LDAP Authentication Before After JDBC Authentication Before After In-Memory Authentication Before After Local AuthenticationManager @Bean으로 등록

[시행착오] 헉! SpringSecurity deprecated 된 것들이 왤케 많아?
응? Deprecated?? 비상!!!! 우연히 한 책의 실습을 따라하다가 문제가 발생했다! 여기에서 막 여러 부분에서 막 deprecated 됬다고 난리가 나버렸다. 어.. 그런데 실습에서 단골로 많이 나오게 되는 친구들이다... 원인 docs를 보게되니 거의 실습에서 사용이 자주되는 것이 deprecated
[Deprecated] UIKit : keyWindow
누군가에게 알려주기 보다는 나 스스로 정리 하며 언젠가 다시 사용할 때를 대비하는 글을 작성할것이다. > 코드를 작성하다 만나게 되는 Deprecated된 요소들을 앞으로 어떻게 사용해야 할 지 알아보는 게시글이 될 것이다. > ## Deprecated 중요도가 떨어져 더 이상 사용하지 않거나 아직은 사용하지만 새로운 기능의 존재로 사라지게 될 기능 시작 > #### Property: keyWindow 버전 iOS 2.0 ~ 13.0 iPadOS 2.0 ~ 13.0 용도 이 프로퍼티는 가장 최근에 보낸 makeKeyAndVisible()메시지를 윈도우즈 배열의 UIWindow 오브젝트를 보유한다. 선언 분석 해당 프로퍼티의 경우 13.0 부터 Deprecated 되어 있
[Deprecated] WebKit : javaScriptEnabled
누군가에게 알려주기 보다는 나 스스로 정리 하며 언젠가 다시 사용할 때를 대비하는 글을 작성할것이다. > 코드를 작성하다 만나게 되는 Deprecated된 요소들을 앞으로 어떻게 사용해야 할 지 알아보는 게시글이 될 것이다. > ## Deprecated 중요도가 떨어져 더 이상 사용하지 않거나 아직은 사용하지만 새로운 기능의 존재로 사라지게 될 기능을 의미 시작 > #### Property: javaScriptEnabled 버전 iOS 8.0 ~ 14.0 iPadOS 8.0 ~ 14.0 macOS 10.10 ~ 11.0 용도 자바스크립트 사용을 활성화 하는 용도로 사용 선언 분석 해당 프로퍼티의 경우 14.0 부터 Deprecated 되어 있기에 3

[Kotlin in Action] 10장 애노테이션과 리플렉션
10장에서 다루는 내용 > 애노테이션 적용과 정의 리플렉션을 사용해 실행 시점에 객체 내부 관찰 코틀린 실전 프로젝트 예제 어떤 함수를 호출하려면 그 함수가 정의된 클래스의 이름과 함수 이름, 파라미터 이름 등을 알아야 한다 -> 그런 제약을 벗어나게 해주는 것이 애노테이션 과 리플렉션 애노태이션을 사용하면 라이브러리가 요구하는 의미를 클래스에게 부여할 수 있다 리플렉션을 사용하면 실행 시점에 컴파일러 내부 구조를 분석할 수 있다 10.1 애노테이션 선언과 적용 메타데이터를 선언에 추가하면 애노테이션을 처리하는 도구가 컴파일 시점이나 실행 시점에 적절한 처리를 해준다 10.1.1 애노테이션 적용 애노테이션을 적용하려면 적용하려는 대상 앞에 애노테이션을 붙이면 된다 -> 함수/클래스 등 여러 다른 코드 구성 요소에 애노테이션을 붙일 수 있다 [@Deprecated 애노테이션](https:/

[Android/Kotlin] onBackPressed() deprecated -> OnBackPressedCallback 변경
💌 [Android/Kotlin] onBackPressed() deprecated -> OnBackPressedCallback 변경 > 'onBackPressed(): Unit' is deprecated. Overrides deprecated member in 'androidx.core.app.ComponentActivity'. Deprecated in Java > This declaration overrides deprecated member but not marked as deprecated itself. This deprecation won't be inherited in future releases. Please add @Deprecated annotation or suppress. Se

[Android/Kotlin] getSerializableExtra() Deprecated
💌 [Android/Kotlin] 'getSerializableExtra(string!): Serializable?' is deprecated. Deprecated in Java > 'getSerializableExtra(string!): Serializable?' is deprecated. Deprecated in Java 업로드중.. 📌 Android API 33 이후 getSerializable()이 deprecated 되었다고한다. 기존 API 33 이후 다음과 같이 분기 필요 💙 다음과 같이 확장함수를 만들어주면 편리하다.
@Deprecated 란?
Deprecated된 클래스는 후에 삭제될 수 있으며 사용되지 않길 권장한다. deprecated된 클래스는 삭제 예정이며, 일반적으로 대신할 새로운 클래스가 존재한다. deprecated는 사용을 권장하지 않을 뿐, 못 하게 막는 것이 아니다(= 문제없이 실행이 된다는 말) 클래스는 같은 이름을 가질 수 없다. 일반적으로 대신할 클래스가 이름을 물려받고 삭제될 클래스의 이름은 약간 변경된다. 위 예시처럼 삭제될 구 클래스는 이름에 글자 하나(여기선 hello의 'l')을 빼서 뉴 클래스가 컴파일 되는데 문제 없게 한다.
presentationMode는 deprecated되었습니다!
PresentationMode 용도 우리가 presentationMode를 쓸 때는 주로 ModalView 같은 것을 뷰에서 dismiss할 때 사용했습니다. 아래 코드 처럼요. 하지만… 공식문서를 보시면 알겠지만 이제 PresentationMode는 deprecated되었다고 합니다😭 (bye bye…) 기존의 PresentationMode는 이제 isPresented와 dismiss로 각각 구분해서 사용하면 된다고 하네요. dismiss 활용하는 법 바뀐 dismiss를 활용하는 법은 저 쉽습니다. 이제 wrappedValue로 내부값을 가져올
startActivityForResult() deprecated
startActivityForResult()가 deprecated돼서 다른 것을 찾아보다가 알아낸 게 registerForActivityResult()였다. 구글 로그인 버튼을 누르면 loginLaucher를 launch해서 로그인을 진행. 그 후에 registerForActivityResult를 세팅해서 구동할 수 있게 작성해야 한다. 아래는 구글 로그인을 인증해서 토큰 확인하고 소셜로그인 하는 부분

redux와 Redux Toolkit (rtk)
로그인 정보를 전역 상태로 사용하기 위하여 redux를 사용하기로 마음먹었다. 자연스럽게 일단 전역 상태를 저장할 store를 만들기 위해 createStore를 불러왔는데, 다음과 같은 상황에 처했다. 커서를 createStore에 대고 읽은 안내 메세지에 따르면, createStore는 deprecated되었고 그 대신에 @reduxjs/toolkit의 configureStore메소드를 사용하는 것을 추천받았다. 🥔 그리고 왜 RTK를 사용해야 하는지 적혀있는 공식문서의 주소도 안내받았다. 🥔 https://redux.js.org/introduction/why-rtk-is-redux-today 이제는 redux를 사용하는데 Redux Toolkit가 필수적인 요소가 되었고

[Java] 애너테이션(Annotation)
프로그래밍 개발을 하면 주석은 필수에요. 프로그래밍에 영향을 주지 않으면서 필수적인 기록들을 하고 이후에 저 자신이나 같은 일하는 개발자들이 코드를 이해하는데 큰 도움이 되요. 이 뿐만이 아니라, 자바의 경우 javadoc 프로그램을 통해 HTML 형식으로 작성된 주석을 읽어들여 API로 제공하는 인터페이스나 메서드를 문서 자동화를 해줘요. 지금 정리할 애너테이션annotation은 주석(실은 주석이 영어로 annotation이긴 해요 ㅎㅎ)처럼 프로그래밍에 영향을 미치지 않으면서 프로그램에게 유용한 정보를 제공해주어요. 이 뿐만 아니라 프로그래밍 하는데 있어 여러 편리한 기능도 제공해요. 표준 애너테이션 자바에서 기본적으로 제공하는 애너테이션은 많아요. 이 중 자주 사용되는 부분만 정리할게요. @Override 상속된 메서드임을 프로그램에 알려주는 애너테이션이에요. 다형성을 활용하기 위해선 상속하려는 메서드 명을 정확하게 일치해서 작성해야 해요.

[12일차] 자바 - 인터페이스, Date 클래스
인터페이스 (Interface) 인터페이스 란 > 자바 프로그래밍 언어에서 클래스들이 구현해야 하는 동작을 지정하는데 사용되는 추상 자료형 상수와 추상 메서드만 선언 가능 인터페이스를 이용한 다중 상속 가능 상수 public static final 변수 타입 추상 메서드 public abstract 리턴 타입() 예시 코드 출력 결과 날짜 출력 > 날짜 정보를 얻을 수 있는 클래스를 알아보자 Date 클래스 출력 결과 결과가 표준시로 출력되는 것을 볼 수 있는데 이것을 다른 표기 방법으로 나타낼 수도 있다 출력 결과 YYYY-MM-DD, 와 문화권에 맞는 출력이 나왔다 하지만, 이 메서드 에는 문제가 있는데 
[Warning] OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.
JDK 11 에서 17로 변경하면서 새로운 Warning 메시지 발견 >OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release. JDK 13부터 -Xvereify:none 과 -noverify 옵션을 사용할 수 없다. 그래서 관련 옵션을 사용하지 않도록 설정을 변경해 주어야 한다. Run/Debug Configuration 실행 Modify options 선택 Run/Debug Configuration Disalbe l

[Android Deprecated] StartActivityForResult
평소 Navigation을 사용해서 Fragment끼리 화면이동을 주로 하다보니 Activity간 이동은 최근들어 경험이 없었다. 회사에서 만들어놓은 aar파일이 있어 적용을 했는데 그 중 하나가 다른 Activity를 열고 Result값을 받아오는 코드가 있었고, 그에 적합한 것이 바로 startActivityForResult다. 하지만 그림과 같이, 시원하게 작대기가 그어져 있어 새로나온 ActivityResultLauncher를 알아보려 한다. 항상 Deprecated가 된 API들이 있으면 구글이 의도가 있을테니 이유를 찾아보는 습관이 있다. 우선 개발자 문서가 있고, 내용을 훑

[Android] Deprecated, Warning
코드의 가로줄이나(deprecated) deprecated 오줌색의 네모난 블럭들 warning d 그냥 지나치기엔 뭔가 찜찜하고 가독성에 방해가 되어 바로바로 고치는 성격이라 한 번 모음집을 만들면 좋겠다는 생각이 들었다. 시작하기에 앞서 deprecated와 warning에 대해 간략히 설명하자면 1. Deprecated 개발자의 입맛에 맞게 네이버에 뜻
Gradle Could not find method compile() 해결 방법
위의 코드는 오류를 발생시켰다. 오류는 아래와 같다. >Could not find method compile() for arguments [org.springframework:spring-context:5.0.2.RELEASE] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler. compile, runtime, testCompile, testRuntime 은 Gradle 4.10 (2018.8.27) 이래로 deprecate 되었다. 그리고 Gradle 7.0 (2021.4.9) 부터 삭제되었다. 필자는 Gradle 7.3.3 을 이용하고 있어서 삭제된 명령을 사용했으므로 오류가 발생했었다. 삭제된 네 명령은 각각 implementation, runtimeOnly, testImplementation, testRuntimeOnly