DX・デジタルトランスフォーメーション

AppStoreにて無料公開中! ”システム手帳”で検索! - AppStoreへ iPad版 - iPhone版

ブロックチェーン・暗号技術 | android | iOS | Web | アプリの著作権 | 日本のなりたち | 禅・大乗仏教 | 新しい社会

25年経過してもUNIX Socket は UNIX Socket のままだった

UNIXのソケット通信を初めて実装したとき、心がざわざわするほど感動したものだ。

私がプログラマになって、はじめて通信プログラムを実装したのは、RS-232Cというシリアル回線で接続したHP-UX UNIXワークステーションとPC (MS-DOS)との通信だった。

(インターネットは大学と研究機関が独占し、一般企業や個人はまったく使えなかった時代だ。)

PCから送った文字がUNIXで表示できたときは、涙が出るほどうれしかったことを憶えている。

25年前の出来事だ。

それから25年後、androidスマホとPC (Windows7)との通信を実装する機会があった。

災害情報をPCからスマホにブロードキャストするというもので、どうやって実装しようか考え、UNIXソケットで実装することにした。

プログラミングしながら、25年前に勉強したことがティッシュペーパに水が染み込むように思い出された。

RS-232C は Wifiネットワーク に変わり、UNIX は android に変わり、開発環境は vi から IntelliJ IDEA や Android Studio に変わり、C言語はJavaに変わったけれど、UNIX Socket は UNIX Socket のままだった。


            try {
                // サーバへコネクションリクエスト
                Socket socket = new Socket();
                socket.connect(new InetSocketAddress(IP_SERVER, SOCKET_SERVER), CONNECT_TIMEOUT);
            } catch (SocketTimeoutException ex) {
                // タイムアウト
            } catch (ConnectException ex) {
                // Wifi切断等のコネクションエラー
            }

            try {
                OutputStream outputStream = socket.getOutputStream();
                // サーバへリクエスト送信
                byte[] requestBuffer = "Request String".getBytes("UTF-8");
                outputStream.write(requestBuffer, 0, requestBuffer.length);
            } catch (Exception ex) {
                // Writeエラー
            }

            // リクエストを受信
            while(true) {
                String requestString = readSocket(socket, inputStream, outputStream);
            }

2023年12月
     12
3456789
10111213141516
17181920212223
24252627282930
31      
android
iOS
web
アプリの著作権
ブロックチェーン/暗号技術
新しい社会
禅・大乗仏教
日本のなりたち

AppStoreにて無料公開中! ”システム手帳”で検索! - AppStoreへ iPad版 - iPhone版
デジタルトランスフォーメーションで新しい生活を提案!