[Android-Kotlin] convert java to kotlin에서 문제가 발생한 m-prefix, s-prefix는 정규 표현식으로 한 번 바꾸어 제거합니다.
입문
평소 기술학과 소재는 개인 블로그에 적혀 있지만, 광고 달력 규격에 맞춰 Qiita로 첫 투고!
이번 기사에서 하고 싶은 말이 있다면 정규 표현식으로 검색하고 교환하는 것이 편리하다.(실제로는 kotlin이 억지스러워서 괜찮아요.)
◯-prefix는
변수의 명명 규칙에 접두사(시작)에 고정된 문자 (0의 부분) 를 추가합니다.
예제
int strHoge;
static textHoge;
android-java 인코딩 약정
android-java의 스타일 안내서에서private 필드의 접두사는'm'이고static 필드의 접두사는's'입니다. 이것은 관례입니다.
android-java 스타일 안내서는 다음과 같습니다.
- Non-public, non-static field names start with m.
- Static field names start with s.
https://source.android.com/setup/code-style public class Book {
private int mId;
private String mTitle;
private int mPrice;
public Book(final int id,final String title, final int price){
mId = id;
mTitle = title;
mPrice = price;
}
}
Don't use m-prefix and s-prefix
나는android-java 때부터 아무런 의미가 없다고 느꼈다.
그래도 나는 개인적으로 배고픔을 기억하는 법을 자주 한다.
m-prefix와 s-prefix가 들어가지 않는 이유는 많지만 귀속 라이브러리에서 고정된 ButterKnife를 사용할 때 귀속된 물건은private이기 때문에 m를 추가하고 싶지만 ButterKnife의 귀속 규격에 있어서는public이 되어 모순됩니다.
다른 이유에 대해서는 다른 사이트를 참고하세요.
부정·긍정 그룹(vim vs emacs 바람) 등을 검색하면 다양한 기록이 나와 보기만 해도 재미있다.중요한 것은 시간과 장소에 따라 따로 사용하는 것이 좋다.
Android-Kotlin 인코딩 약정
어느 곳에도 m-prefix, s-prefix가 설치되어 있지 않습니다.
단지android-java의 상황에서 자주 사용됩니다.따라서 앞으로kotlin에서android 프로그램을 만들 때 접두사를 붙이지 않을 것입니다.누군가 잘못했나 봐
convert java to kotlin
자바에prefix를 설치한 사람은 AndroidStudio 환경에서 자동으로kotlin으로 전환하는 기능을 사용하면 m-prefix, s-prefix가 남은 상태가 됩니다.
before java
public class Book {
private int mId;
private String mTitle;
private int mPrice;
public Book(final int id,final String title, final int price){
mId = id;
mTitle = title;
mPrice = price;
}
}
after convert java to kotlin
class Book(private val mId: Int, private val mTitle: String, private val mPrice: Int){
}
매우 유감스럽다.
m-prefix와 s-prefix 제거
모두들 잘하는 정규 표현식으로 한 번 교체해라.AndroidStudio에서도 정규 표현식을 사용할 수 있습니다.
정규 표현식의 기록은 거의 모든 언어가 공통적이다.나는 개인적으로 루비를 자주 쓴다.
AndroidStudio의 정규 표현식 구문 참조(IntelliJ IDEA와 동일)
https://www.jetbrains.com/help/idea/2016.2/regular-expression-syntax-reference.html#d1540635e834
교체 수행
m-prefix를 통일적으로 교체합니다.(s-prefix 시 (m) 을 (s) 로 변경하십시오.検索文字:([\s|\t]+)(m)([A-Z])([a-z]+)
置換文字:$1\L$3$4
그림과 같이 Match case(대/소문자 구분), Regex(정규 표현식 사용)를 선택해야 합니다.
해당 파일은 기본 kotlin 파일만 있으면 되므로 File mask에 *가 있습니다.kt에 넣으면 돼요.
자세한 설명은 필요 없을 것 같아서 스냅 기능만 설명하겠습니다.
검색 문자에서 () 를 사용하여 문자를 캡처(재사용)할 수 있습니다.첫 번째 () 는 $1...형식.정규 표현식은 알지만 포착 기능을 모르는 사람이 많기 때문에 모르는 사람이 시도해 보면 편리하다.
우리는 조심해야 한다
mId→id 등 id는 다른 로컬 변수와 예약어 등을 덮어쓰는 상황에서 잘 움직일 수 없기 때문에 통일적으로 바꾸더라도 변환 후 업데이트 테스트를 하는 것이 좋다.교체 객체를 개별적으로 확인하는 것이 안심됩니다.컴파일이 통과되었지만 실행 중 오류나 오류가 발생할 수 있습니다.
총괄하다
kotlin으로 변환된 경우를 제외하고 자바에서prefix를 삭제하고 싶을 때도 사용할 수 있습니다. 꼭 한번 시도해 보세요.
AndroidStudio에서 잘 사용되지 않는 정규 표현식입니다.장소에 따라 개발 효율이 높아질 수 있으니 반드시 적극적으로 사용하세요!
잡담
현재 분배된 프로젝트 코드를 모두java→kotlin으로 변환했습니다.처음에는 종점이 있는지 없는지 계속 대응했지만 실제로는 12일 정도 근무한 끝에 대응했다.(한 번 실패하고 자바로 돌아오는 과정. 상처)
다만 자동 변환 기능은 도저히 할 수 없으며, 항목이 클수록 (코드량이 많을수록) 오류가 많아진다.8000개의 오류가 있었지만,kotlin 특유의non-null계 오류도 그랬지만 코드 수정이 많아서 힘들었어요.다만 kotlin의 함수형 규격은 매우 사용하기 편리하게 변경할 수 있어서 정말 좋다.
네, kotlin 생활!
Reference
이 문제에 관하여([Android-Kotlin] convert java to kotlin에서 문제가 발생한 m-prefix, s-prefix는 정규 표현식으로 한 번 바꾸어 제거합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/y-matsumoto/items/b673f6f45d37f243a6d6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
변수의 명명 규칙에 접두사(시작)에 고정된 문자 (0의 부분) 를 추가합니다.
예제
int strHoge;
static textHoge;
android-java 인코딩 약정
android-java의 스타일 안내서에서private 필드의 접두사는'm'이고static 필드의 접두사는's'입니다. 이것은 관례입니다.
android-java 스타일 안내서는 다음과 같습니다.
- Non-public, non-static field names start with m.
- Static field names start with s.
https://source.android.com/setup/code-style
public class Book {
private int mId;
private String mTitle;
private int mPrice;
public Book(final int id,final String title, final int price){
mId = id;
mTitle = title;
mPrice = price;
}
}
Don't use m-prefix and s-prefix
나는android-java 때부터 아무런 의미가 없다고 느꼈다.
그래도 나는 개인적으로 배고픔을 기억하는 법을 자주 한다.
m-prefix와 s-prefix가 들어가지 않는 이유는 많지만 귀속 라이브러리에서 고정된 ButterKnife를 사용할 때 귀속된 물건은private이기 때문에 m를 추가하고 싶지만 ButterKnife의 귀속 규격에 있어서는public이 되어 모순됩니다.
다른 이유에 대해서는 다른 사이트를 참고하세요.
부정·긍정 그룹(vim vs emacs 바람) 등을 검색하면 다양한 기록이 나와 보기만 해도 재미있다.중요한 것은 시간과 장소에 따라 따로 사용하는 것이 좋다.
Android-Kotlin 인코딩 약정
어느 곳에도 m-prefix, s-prefix가 설치되어 있지 않습니다.
단지android-java의 상황에서 자주 사용됩니다.따라서 앞으로kotlin에서android 프로그램을 만들 때 접두사를 붙이지 않을 것입니다.누군가 잘못했나 봐
convert java to kotlin
자바에prefix를 설치한 사람은 AndroidStudio 환경에서 자동으로kotlin으로 전환하는 기능을 사용하면 m-prefix, s-prefix가 남은 상태가 됩니다.
before java
public class Book {
private int mId;
private String mTitle;
private int mPrice;
public Book(final int id,final String title, final int price){
mId = id;
mTitle = title;
mPrice = price;
}
}
after convert java to kotlin
class Book(private val mId: Int, private val mTitle: String, private val mPrice: Int){
}
매우 유감스럽다.m-prefix와 s-prefix 제거
모두들 잘하는 정규 표현식으로 한 번 교체해라.AndroidStudio에서도 정규 표현식을 사용할 수 있습니다.
정규 표현식의 기록은 거의 모든 언어가 공통적이다.나는 개인적으로 루비를 자주 쓴다.
AndroidStudio의 정규 표현식 구문 참조(IntelliJ IDEA와 동일)
https://www.jetbrains.com/help/idea/2016.2/regular-expression-syntax-reference.html#d1540635e834
교체 수행
m-prefix를 통일적으로 교체합니다.(s-prefix 시 (m) 을 (s) 로 변경하십시오.検索文字:([\s|\t]+)(m)([A-Z])([a-z]+)
置換文字:$1\L$3$4
그림과 같이 Match case(대/소문자 구분), Regex(정규 표현식 사용)를 선택해야 합니다.
해당 파일은 기본 kotlin 파일만 있으면 되므로 File mask에 *가 있습니다.kt에 넣으면 돼요.
자세한 설명은 필요 없을 것 같아서 스냅 기능만 설명하겠습니다.
검색 문자에서 () 를 사용하여 문자를 캡처(재사용)할 수 있습니다.첫 번째 () 는 $1...형식.정규 표현식은 알지만 포착 기능을 모르는 사람이 많기 때문에 모르는 사람이 시도해 보면 편리하다.
우리는 조심해야 한다
mId→id 등 id는 다른 로컬 변수와 예약어 등을 덮어쓰는 상황에서 잘 움직일 수 없기 때문에 통일적으로 바꾸더라도 변환 후 업데이트 테스트를 하는 것이 좋다.교체 객체를 개별적으로 확인하는 것이 안심됩니다.컴파일이 통과되었지만 실행 중 오류나 오류가 발생할 수 있습니다.
총괄하다
kotlin으로 변환된 경우를 제외하고 자바에서prefix를 삭제하고 싶을 때도 사용할 수 있습니다. 꼭 한번 시도해 보세요.
AndroidStudio에서 잘 사용되지 않는 정규 표현식입니다.장소에 따라 개발 효율이 높아질 수 있으니 반드시 적극적으로 사용하세요!
잡담
현재 분배된 프로젝트 코드를 모두java→kotlin으로 변환했습니다.처음에는 종점이 있는지 없는지 계속 대응했지만 실제로는 12일 정도 근무한 끝에 대응했다.(한 번 실패하고 자바로 돌아오는 과정. 상처)
다만 자동 변환 기능은 도저히 할 수 없으며, 항목이 클수록 (코드량이 많을수록) 오류가 많아진다.8000개의 오류가 있었지만,kotlin 특유의non-null계 오류도 그랬지만 코드 수정이 많아서 힘들었어요.다만 kotlin의 함수형 규격은 매우 사용하기 편리하게 변경할 수 있어서 정말 좋다.
네, kotlin 생활!
Reference
이 문제에 관하여([Android-Kotlin] convert java to kotlin에서 문제가 발생한 m-prefix, s-prefix는 정규 표현식으로 한 번 바꾸어 제거합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/y-matsumoto/items/b673f6f45d37f243a6d6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
検索文字:([\s|\t]+)(m)([A-Z])([a-z]+)
置換文字:$1\L$3$4
kotlin으로 변환된 경우를 제외하고 자바에서prefix를 삭제하고 싶을 때도 사용할 수 있습니다. 꼭 한번 시도해 보세요.
AndroidStudio에서 잘 사용되지 않는 정규 표현식입니다.장소에 따라 개발 효율이 높아질 수 있으니 반드시 적극적으로 사용하세요!
잡담
현재 분배된 프로젝트 코드를 모두java→kotlin으로 변환했습니다.처음에는 종점이 있는지 없는지 계속 대응했지만 실제로는 12일 정도 근무한 끝에 대응했다.(한 번 실패하고 자바로 돌아오는 과정. 상처)
다만 자동 변환 기능은 도저히 할 수 없으며, 항목이 클수록 (코드량이 많을수록) 오류가 많아진다.8000개의 오류가 있었지만,kotlin 특유의non-null계 오류도 그랬지만 코드 수정이 많아서 힘들었어요.다만 kotlin의 함수형 규격은 매우 사용하기 편리하게 변경할 수 있어서 정말 좋다.
네, kotlin 생활!
Reference
이 문제에 관하여([Android-Kotlin] convert java to kotlin에서 문제가 발생한 m-prefix, s-prefix는 정규 표현식으로 한 번 바꾸어 제거합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/y-matsumoto/items/b673f6f45d37f243a6d6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여([Android-Kotlin] convert java to kotlin에서 문제가 발생한 m-prefix, s-prefix는 정규 표현식으로 한 번 바꾸어 제거합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/y-matsumoto/items/b673f6f45d37f243a6d6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)