728x90

목동코딩: 지난 일요일(8일) 코딩수업 모습

게임 프로그램 개발에 열중인 상민이, 로블록스에 LUA를 적용중인 태준이 모습이다.

상민이는 중3이라 , 이제 고등학교에 진학하기 전이고, 중학생의 마지막 겨울방학을 보내고 있다.

지난번에 유니티로 개발해서 플레이스토어에 올려놓은 게임이 광고 수익을 얻고 있다고 한다.

워낙 말수가 없고 과묵하다 보니 전혀 모르고 있다가 장관상을 받은 코딩대회에서 발표하는걸 보고서야 알았다.

이번에 개발하는 게임은 순수 자신의 창작품이다. 게임 시나리오부터 3D 디자인까지 혼자서 마무리할 계획이란다.

이번 작품은 아마존 서버에 올려서 돌아가게 도와줄 생각이다.

꼬맹이 태준이는 이번에 초등학교를 들어간다.

스스로 공부한 엔트리는 아두이노까지 수업이 가능하다. 이제 text코딩을 해야 하는데 자꾸 아직 이라고 스스로 고집을 부려서, 로블록스를 통해서 LUA를 적용하도록 꼬시는 중이다 ㅎㅎ.

상민이는 당장도 게임 개발 회사에서 일할 정도가 된다.

꼬맹이 태준이는 어떤 미래를 만들어갈지 정말 기대가 되는 아이다.대화를 해보면 사진 기억력을 가기고 있다. 한번 보면 거의 기억을 한다.

얼마전 학원의 복잡한 구석에 공유기 작은 거 하나를 추가했는데 , 오자마자 바로 알아 낸다 ㅎㅎ.

목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육

728x90
728x90

엔트리의 소프트웨어는 블록코딩으로 작성하고, 로블록스는 LUA라는 언어를 Script형태로 적용한다.

Unity3d 는 C#을 사용한다.

부모님들은 아이들이 엔트리를 하면 코딩인줄알고, 로블록스는 게임인줄만 안다 ㅎㅎ.

이번에 8살이 되어서 초등학교에 입학하는 꼬맹이 에게 올해부터는 LUA를 수업하려고 한다.

----

똑똑한 아이도 쉬운거만 하려는 것은 다 같나보다 ㅎㅎ

올해 부터 8살이 되는 꼬맹이가 얼마전 부터 로블록스를 시작했다. 현재 상황에서 엔트리로 하느건 이제 별 흥미가 없는거 같아서다.

당연히 나는 LUA로 스크립트 하는 것을 전재로 로블록스를 시작했다. 그런데 블록코딩에서 텍스트로 넘어가니까 아직은 힘든지 요리조리 뺀질 거리며 안하려 한다.

그 과정을 사진에 담았다. 그렇게 안 먹으려는 물을 것을 억지로 꼬셔서 몇 모금 마시게 했더니, 1시간째 강좌를 듣고 있다 ㅎㅎ.

내 수가 높은 건지 아직은 꼬맹이가 낮은 건지 모르지만, 잘 꼬신 결과, 물을 마시기 시작해서 1시간째 마시고 있다 ㅎㅎㅎ.

맨뒤 사진은 아예 모니터로 들어가려한다

 

목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육

728x90
728x90

목동코딩 : 인공지능수업, 온라인코딩수업

요즘, 보안관련, 진단관련, 음식 메뉴 관련 인공지능 응용시스템을 만들고 있다.

속으로 조금 걱정을 했는데 의외로 인식을 잘한다.

강아지나 고양이 와는 다르게, 외형이 불규칙해서 될까? 싶었는데 의외의 결과가 나왔다.

이번 프로젝트를 통해서 앞으로는 비젼시스템이 주된 방식이 될거 같은 확신이 든다.

물론 이 자체로는 활용 하기가 곤란하겠지만, 다양한 플랫폼이 추가되면 아주 큰 활용이 가능하다는 생각이 든다.

아래 사진은 인터넷에서 다운받은 사진으로서 육개장, 냉면, 라면, 콩장, 짜장면을 인식한 샘플사진이다.

 

목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육
목동코딩학원 : 온라인코딩교육

728x90
728x90
목동코딩: 코딩교육

​

프로젝트를 하면서 시간이 쫓기다 보면, 사용된 방법을 정리하지 못하는 경우가 있다.

그래서 이번에는 다음에 사용하기 위해서 조금 했갈렸던 ajax return 처리 방법을 정리해둔다

ajax call 할때 dataType :  "json" 이라고 하지 않아도 사용상에 문제가 없다.

​

ajax call

<script>
    $('tr').click(function() {
        // $(this).find("td:eq(0)").text();
        var ser = $(this).attr('ser');
        var con = confirm("선택한 메뉴를( " + $(this).attr('menu_name') + " ) 삭제할까요?");
        if(con == true){
            var form_data = {
                ser: ser
            };
            $.ajax({
            type: "POST",
            url: "./menu_deleteCart.php",
            data: form_data,
            success: function(response) {
                var data = $.parseJSON(response);
                alert(data.status);
                if(data.status == "OK"){
                    location.reload();
                }
                if(data.status == "NO"){
                    //삭제 실패함
                }
            }
        });   
        }
        else if(con == false){
            //삭제 취소
        }

 
    });

</script>
​

​

delete.php

$ser = $_POST[ser];

$response = array();

$sql = "";
$sql = $sql." Delete From tbl_cart ";
$sql = $sql." where ser = '$ser' ";

if (!mysqli_query($conn_hof,$sql))
{
  echo("Error description: " . mysqli_error($conn_hof));
  $response['status'] =  "NO";
}else {
  $response['status'] =  "OK";
}

echo json_encode($response);
728x90
728x90
목동코딩 : 코딩교육

문법 - strlen(),  mb_strlen()

strlen( string ) : string : 길이를 구할 문자열.

​

echo strlen( '123 abc' );

Space 포함 7을 출력다.

echo strlen( '가나다' );

Byte 수를 계산하여 출력.

​

mb_strlen( string [, encoding] ) : string : 길이를 구할 문자열.

encoding : 인코딩 방식, euc-kr, utf-8

echo mb_strlen( '123 abc' );

는 7을 출력합니다.

​

echo mb_strlen( '가나다', 'euc-kr' );

는 6을 출력합니다.

​

echo mb_strlen( '가나다', 'utf-8' );

는 3을 출력합니다.

​

여기서 나는 echo mb_strlen( '가나다', 'utf-8' );을 사용해서 글자수를 구했다
728x90
728x90
목동코딩 : ajax로 로그인 처리시 버튼 clcik 하면 추가로 버튼을 생성하는 방법

추가적인 동작이 필요한 프로그램에 사용하면 좋을거 같다

<script>
$(function (){
    $("#login").on("click",function(){
        $("div").html("<button id='button2'>click</button>");
    });
});
 
</script>
form에서 submit 실행시 처리방법

$("#login").submit(function(event){
    var mesg = "실패"
    if($(":text").val()=='ok'){
        mesg = "성공";
    }
});
​

다음은 폼 이벤트 처리이다

    <form>
        <input id="target" type="text">
        <input type="text">
    </form>
    <button id="id1">focus</button>
    <button id="id2">blur</button>

...

$(function (){
   $("#target").focus(function(){
       $(this).css("background", "red");
   });
   $("#target").blur(function(){
       $(this).css("background", "");
   });
   $("#id1").on("click",function(){
       $("#target").focus();
   });
   $("id2").on("click",function(){
       $("#target").blur();
   })

   $("select").change(function(){
        $("div").text($("option:selected").text());
   });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js"></script>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
..
..
<div class="container-login100-form-btn">
	<div class="wrap-login100-form-btn">
	<div class="login100-form-bgbtn"></div>
	<button id="login"  class="login100-form-btn">
		Login
	</button>
	</div>
</div>

 

728x90
728x90

오늘 하루 반나절을 허비한거 같다 ( 물론 경험은 생기지만... )

직접 프로그램을 작성 할때는 경험 하지 못했던 error 가 반나절을 허비하게 했다

아래의 (1)번과 (2)번의 차이는 "<button Tag에 type=button 의 속성 유무이다

템플릿을 가져다가 필요에 따라 변경하여 사용하다 보니 저 속성 하나 때문에 시간을 허비했다 ㅎㅎ.

 
(1)번
<div class="container-login100-form-btn">
	<div class="wrap-login100-form-btn">
	<div class="login100-form-bgbtn"></div>
		<button               id="login"  class="login100-form-btn">
				Login
		</button>
	</div>
</div>

(2)번
<div class="container-login100-form-btn">
	<div class="wrap-login100-form-btn">
	<div class="login100-form-bgbtn"></div>
		<button type="button" id="login"  class="login100-form-btn">
				Login
		</button>
	</div>
</div>

 

728x90
728x90

지금은 YouTube와 구글 Browser가 충분한 선생님이다 ㅎ

처음 전산실 근무하며, COBOL만 사용하며 근무해도 월급 받기 충분했지만,

HP SE(System Engineer)로 근무하던 친구가, 앞으로는 MS제품 한 두개는 할 줄 알아야 한다 기에, Windows NT, Visual Basic 을 공부해서 한 시절을 버텼다.

외국에서 들어온 뒤 ,20대 후반의 젊은 친구가 Andorid 와 Unity 3d 라는게 있다고 하기에, 또한 공부 해서 지금 까지도 버티고 있다.

서버 운영도 Windows 환경에서 Linux 환경으로 바꿔서 지금껏 사용하는데, 또 한 번 공부를 하려고 벼르던 것이 Docker 와 kubernetes 였다.

다양한 환경의 시스템 유지 보수와 신규 시스템 개발을 하다 보니 공부할 필요성을 느꼈지만, 미루고 미루다가 최근에 일차 공부를 마치고 실제 서버 운영을 Docker 방식으로 시작했다. 서로 다른 서버 환경을 하나의 서버에서 구동 하다 보니 신기하기도 하고 비용도 절감이 된다.

YouTube를 보다 보면 자꾸 연관 검색에 뜨길래, 공부 해야지 해야지 하고 미루다가 시작한 Docker , kubernets 공부하는데 , 근 한 달 간을 선생님 역할을 해준 구글 검색과 유튜브에 감사한다.

집에서도 채널 Scan을 한번하고 나면 YouTube로 넘어가서 나만의 공부를 한다 ㅎㅎ

 

목동코딩학원 : 온라인코딩교육

728x90

+ Recent posts