2021년 1월 20일 수요일

[추천사이트] 브랜드 이름과 디자인을 만들어주는 사이트(https://namelix.com/)

 [추천사이트] 브랜드 이름과 디자인을 만들어주는 사이트(https://namelix.com/)


장점 : 

1. 자신이 입력한 키워드로 브랜드 이름을 멋지게 만들어준다.

2. 뿐만 아니라, 브랜드 로고 디자인까지 만들어준다.


단점 : 

1. 브랜드이름을 한글로는 못만든다.


사용방법 : 


1. https://namelix.com/ 접속



2. keyword 입력 후, generate 클릭



3. 해당 사항 선택 후, generate 클릭


4. 결과물 선택

5. 종류에 따라 유료도 있음



2021년 1월 19일 화요일

[JAVA] IE11(인터넷익스플로어) 브라우저에서 모음자음 분리되어 보이는 현상 문제해결

 [JAVA] IE11(인터넷익스플로어) 브라우저에서 모음자음 분리되어 보이는 현상 문제해결


> 문제점 : 아래처럼 IE11 에서 한글 모음과 자음이 분리되어 보여짐.



> 원인 : IE11에서 한글을 NFC 정규화 하지 않아 발생하는 현상,


> 해결 : 자바에서 NFC 정규화 수행.


> 소스

1
2
3
4
5
6
7
8
9
10
11
12
public static void main(String[] args) {
    String script = "모음자음 분리된 글자";
    System.out.println("> befor : " + script);
    System.out.println("> after : " + normalize(script));
}
 
public static String normalize(String script) {
    if (!Normalizer.isNormalized(script, Normalizer.Form.NFC)) {
        return Normalizer.normalize(script, Normalizer.Form.NFC);
    }
    return script;
}
cs





2020년 8월 17일 월요일

[spring tool suit4] pom.xml executions error

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<build>
        <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory>
        <testSourceDirectory>${project.basedir}/src/test/kotlin</testSourceDirectory>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-maven-plugin</artifactId>
                <version>${kotlin.version}</version>
                <executions>
                    <execution>
                        <id>compile</id>
                        <goals>
                            <goal>compile</goal>
                        </goals>
                        <configuration>
                        <sourceDirs>
                            <sourceDir>${project.basedir}/src/main/kotlin</sourceDir>
                            <sourceDir>${project.basedir}/src/main/java</sourceDir>
                        </sourceDirs>
                    </configuration>
                    </execution>
                    <execution>
                        <id>test-compile</id>
                        <goals>
                            <goal>test-compile</goal>
                        </goals>
                        <configuration>
                            <sourceDirs>
                                <sourceDir>${project.basedir}/src/test/kotlin</sourceDir>
                                <sourceDir>${project.basedir}/src/test/java</sourceDir>
                            </sourceDirs>
                        </configuration>
                    </execution>
                </executions>
                <configuration>
                    <nowarn>true</nowarn>  <!-- Disable warnings -->
                    <args>
                        <arg>-Xjsr305=strict</arg>
                    </args>
                    <compilerPlugins>
                        <plugin>spring</plugin>
                    </compilerPlugins>
                </configuration>
                <dependencies>
...
cs


 executions 에러및 참고

참조 : 

https://stackoverflow.com/questions/6352208/how-to-solve-plugin-execution-not-covered-by-lifecycle-configuration-for-sprin

2019년 10월 29일 화요일

[통신] [JAVA] IEEE-754 Floating-Point Conversion

JAVA

IEEE-754 Floating-Point Conversion

hex or bin ---> ieee 754 규칙으로 floating-point 변환을 예제로 설명>

* 주어진 값

Decimal : 
66 200 0 0
Hex : 
0x42 0xC8 0x00 0x00
Bin :
1000010 11001000 00000000 00000000


1) hex -> bin 으로 변경 (bin 32 자리)
Bin 1 (왼쪽기준) 자리 :
0->+
1->-

===> 예제에서는 왼쪽 1 자리가 값이 비어 있는데, 0 이란 뜻.

2) 왼쪽기준 2번째 자리부터 8개 자리 값을 decimal 변경해서, 127을 뺀다.
===> 1000010 1 -> 133(decimal) - 127 = 6    :     2의 6제곱 값을 말함.

3) 나머지 비트 자리 수를 가수로써 1 .10010000000000000000000 => 1.5625000


1) * 2) * 3) 을 모두 곱하면 결과값이 나옴. : 100.0000000

계산 참고용 사이트>
https://babbage.cs.qc.cuny.edu/IEEE-754.old/32bit.html




+++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++



> 자바에서는 Float.intBitsToFloat(int value); 를 사용하면 된다.

예제 ]
 - b[i] 는 byte [], start 는 byte []에서 시작 값, length는 사용할 byte 개수


StringBuilder sb=new StringBuilder();
for(int i=start; i<(start+length); ++i){
    sb.append(byteToBinaryString(b[i]));
}
int bits = Integer.parseInt(sb.toString(), 2);
Float result = Float.intBitsToFloat(bits);









2019년 8월 13일 화요일

[Data Science] DS School의 ║데이터 사이언스 입문║과정 후기






DS School의 ║데이터 사이언스 입문║과정을 마치며 느낀점.


데이터사이언스입문과정은 오프라인으로 5주간 주1회 4시간씩 진행되는 수업이었다.
과정을 듣기 전, 데이터 사이언스라는 클래스명에서 풍기는 냄새는, 먼가(명확하지않고 뜬구름같이) 고급진 커리어를 만들수 있을 것 같은 막연한 기대감에 다른 IT 관련 교육보다 관심이 컸고, 데이터를 자유자재로 다루며 데이터에서 남들이 보지 못한 가치를 데이터로써 만들어 낼 수 있지 않을까 기대가 됬다.



과정 속에서, 데이터사이언스가 어떤 분야이고, 데이터분석가가 어떤툴을사용하고, 어떤방향으로 어떤방법으로 데이터를 판단하고 분석할수 있는지 전체적인 윤곽을 이해할 수 있었다. 그리고 앞으로 어떻게 좀더 깊이 공부할 수 있을지 방향도 찾을 수 있었던 시간이었던 것 같다. 그렇다고, 개관만 훑어보는 것 만은 아니다. 수업료가 할인받아서 50만원이다. 수업을 알차게 준비했다고 느껴진다. 데이터분석을 위해 다루는 툴도 배우고, 익숙해 지는데 도움이 되도록 실습시간도 충분히 주워졌다. 다만 개개인의 학습력에 따라 또는 타자 치는 속도 또는 파이선 언어 사용법의 익숙도에 따라 차이는 있다.



5주간의 시간이 기대만큼, 내 실력을 키울수는 없었다. 5주간이지만, 1주에 하루 집중해서 이론적이고 방법적인 내용을 수업 시간 동안 습득하기는 어렵다. 매일매일 3-4 시간씩 연습해보면서 툴과 언어를 익숙하도록 공부하면, 데이터를 다루는데 있어서 수업시간에 습득되지 못한 부분은 채워질 것 같다. 하지만 데이터분석을 할려면 데이터를 잘 다룰 줄 알아야되기도 하고 어떻게 데이터를 정리 할지 어떻게 예측값에 오차가 없도록 데이터를 조정할 수 있을지에 대한 고민과 경험이 필요함으로, 입문반 통해서 데이터분석가가 되겠다는 욕심은 버리는게 좋을 듯하다. 그러나 데이터분석가가 되겠다는 다짐 앞에 훈련을 위한 방법과 도구를 다 준비한 느낌이다. 훈련방향도 어느정도 잡힌다. 부지런히 훈련하다보면 어느덧 능력있는 데이터 사이언티스트가 되있으리라고 본다.



* 실습했던 kaggle competition



Titanic: Machine Learning from Disaster




Bike Sharing Demand




- DS School에서 작성한 [30일 만에 데이터 사이언티스트가 되는 비법] 글 공유

https://medium.com/@DSSchool/30%EC%9D%BC-%EB%A7%8C%EC%97%90-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%82%AC%EC%9D%B4%EC%96%B8%ED%8B%B0%EC%8A%A4%ED%8A%B8%EA%B0%80-%EB%90%98%EB%8A%94-%EB%B9%84%EB%B2%95-e0287a06c1c8

2019년 7월 8일 월요일

[git] gitlab 사용법

[git] gitlab 사용법

0. gitlab 계정생성 및 저장소와 프로젝트 생성

1. git bash 실행

2. git 관리를 원하는 폴더에서 아래 명령 실행

3. git clone git@gitlab.com:[git저장소명]/[프로젝트명].git

4. 작성하던 프로젝트 파일을 git clone해서 생성된 프로젝트 폴더에 저장

5. git add * (파일추가)

6. git commit -m "git commit message..."

7. git push origin master

--> gitlab 에서 master에 추가된 프로젝트파일이 확인될 것임.

8. git lab 에서 new branch 실행(개발자 당 한개씩 추가)

9. 다시 git bash에서, git pull 실행

10. git branch -a

--> 생성된 branch 확인가능

11. git checkout [브랜치명]

12. checkout 한 branch 로 변경됨


** merge 방법

1. branch 에서 작업 후 merge 시,

2. git checkout master

3. git merge [작업한 브렌치명]

--> conflict (충돌) 발생시, 수동으로 수정후, 다시 시도.


2019년 5월 16일 목요일

[android] AndroidX Preference 설정 시 오류 (kotlin 해당)

[android] AndroidX Preference 작성 시 주의사항 (kotlin 해당)


https://developer.android.com/guide/topics/ui/settings?hl=ko

위 사이트에서 preference 작성 방법을 참고 할 수 있다.

그래서 참고자료 대로 작성하고 실행해 봤지만 에러가 발생했다.

에러와 수정방법을 아래와 같이 정리했다.


에러 내용 :
java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter savedInstanceState


수정 방법 :

에러 내용 처럼, nullable 처리를 해줘야 한다.

override fun onCreatePreferences(bundle: Bundle?, s: String?) {}


- 끝 -